daily pastebin goal
30%
SHARE
TWEET

Untitled

a guest Jun 19th, 2017 51 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. Ekzekutimin e një Procedura ruajtur
  2.  
  3. Përveç komandat ndërtuar me vargjet, llojin SqlCommand mund të përdoret për të ekzekutuar procedurat e ruajtura. Ka dy detyra të kërkojë për të bërë këtë të ndodhë: le të objektit SqlCommand di që ruajtur procedura për të ekzekutuar dhe të them të objektit SqlCommand se ajo është ekzekutuar një procedurë të ruajtura.TO dy hapa janë paraqitur më poshtë:
  4.  
  5. / / 1. të krijojë një komandë objekt të identifikuar
  6. / / Ruajtur procedura
  7. SqlCommand cmd SqlCommand = NEW (
  8. "Dhjetë më të shtrenjtë Produkte", conn);
  9.  
  10. / / 2. vendosur objektin komandën kështu që e di
  11. / / Për të ekzekutuar një procedurë të depozituara
  12. cmd.CommandType = CommandType.StoredProcedure;
  13. Duke deklaruar objekt SqlCommand më lart, parametri i parë është vendosur të "Dhjetë Produktet më të shtrenjtë". Ky është emri i një PROCEDURE të ruhet në bazën e të dhënave Northwind. Parametri i dytë është objekt lidhje, e cila është e njëjtë si konstruktor SqlCommand përdorur për ekzekutimin strings pyetje.
  14.  
  15. Komandën e dytë tregon objektin SqlCommand çfarë lloji të komandës ajo do të ekzekutojë me vendosjen e pronës së saj CommandType me vlerën StoredProcedure e enum CommandType. Interpretimi i DEFAULT i parametri i parë për konstruktor SqlCommand është për të trajtuar atë si një varg pyetje. Duke i CommandType të StoredProcedure, parametri i parë për konstruktor SqlCommand do të interpretohet si emri i një PROCEDURE të ruajtur (në vend të interpretuar atë si një varg komandë). Pjesa tjetër e kodit mund të përdorni të SqlCommand objekt njëjtë me atë që është përdorur në mësimet e mëparshme.
  16.  
  17. Dërgimi Parametrat për Procedurat e ruajtur
  18.  
  19. Duke përdorur parametrat për procedurat e ruajtur është e njëjtë si duke përdorur parametrat për komandat varg pyetje. Kodin e mëposhtëm tregon këtë:
  20.  
  21. / / 1. të krijojë një komandë objekt të identifikuar
  22. / / Ruajtur procedura
  23. SqlCommand cmd SqlCommand = NEW (
  24. "CustOrderHist", conn);
  25.  
  26. / / 2. vendosur objektin komandën kështu që e di
  27. / / Për të ekzekutuar një procedurë të depozituara
  28. cmd.CommandType = CommandType.StoredProcedure;
  29.  
  30. / / 3. ADD parametër të komandës, të cilat
  31. / / Do të kalojë në procedurë të ruajtura
  32. cmd.Parameters.ADD (
  33. ri SqlParameter ("@ CustomerID", custId));
  34. Konstruktor SqlCommand mësipërme përcakton emrin e një PROCEDURE të ruajtur, CustOrderHist, si parametër të tij të parë. Kjo procedurë të veçantë ruhet merr një parametër të vetëm, me emrin @ CustomerID. Prandaj, ne duhet të popullojnë këtë parametër duke përdorur një objekt SqlParameter. Emri i parametër kaloi si parametër i parë për konstruktor SqlParameter duhet të jenë të përcaktuara saktësisht i njëjtë me parametër procedurë të ruajtura. Pastaj ekzekutojë komandën e njëjtë si ju do me ndonjë objekt SqlCommand tjera.
  35.  
  36. Një shembull i plotë
  37.  
  38. Kodin në Listing 1 përmban një shembull të plotë të punës e si të përdorin procedurat e ruajtura. Ka metoda të veçanta për një procedurë të ruajtura pa parametrat dhe një procedurë të depozituara me parametra.
  39.  
  40. Listing 1: Ekzekutive Procedurat ruajtur
  41.  
  42. përdorimin e sistemit;
  43. duke përdorur System.DATA;
  44. duke përdorur System.DATA.SqlClient;
  45.  
  46. StoredProcDemo klasë
  47. (
  48. Kryesore statike pavlefshëm ()
  49. (
  50. StoredProcDemo SPD StoredProcDemo = NEW ();
  51.  
  52. / / Drejtuar një procedurë e thjeshtë ruajtur
  53. spd.RunStoredProc ();
  54.  
  55. / / Drejtuar një procedurë të ruajtura që merr një parametër të
  56. spd.RunStoredProcParams ();
  57. )
  58.  
  59. / / Drejtuar një procedurë e thjeshtë ruajtur
  60. RunStoredProc publike pavlefshëm ()
  61. (
  62. conn SqlConnection = NULL;
  63. rdr SqlDataReader = NULL;
  64.  
  65. Console.WriteLine ("\ nTop 10 më të shtrenjtë Produkte: \ n");
  66.  
  67. përpjekje
  68. (
  69. / / Krijojë dhe të hapur një objekt lidhje
  70. conn = reja
  71. SqlConnection ("Server = (lokale), DataBase = Northwind; Integruar të Sigurimit = SSPI");
  72. conn.OPEN ();
  73.  
  74. / / 1. të krijojë një komandë objekt të identifikuar
  75. / / Ruajtur procedura
  76. SqlCommand cmd SqlCommand = NEW (
  77. "Dhjetë më të shtrenjtë Produkte", conn);
  78.  
  79. / / 2. vendosur objektin komandën kështu që e di
  80. / / Për të ekzekutuar një procedurë të depozituara
  81. cmd.CommandType = CommandType.StoredProcedure;
  82.  
  83. / / Ekzekutojë komandën
  84. = Rdr cmd.ExecuteReader ();
  85.  
  86. / / Iterate nëpërmjet rezultateve, shtypjen e çdo të tastierë
  87. ndërsa (rdr.READ ())
  88. (
  89. Console.WriteLine (
  90. "Produkti: (0, -25) Çmimi: $ (1,6) :####. 00",
  91. rdr ["TenMostExpensiveProducts"],
  92. rdr ["UnitPrice"]);
  93. )
  94. )
  95. më në fund
  96. (
  97. në qoftë se (lidhje! = NULL)
  98. (
  99. conn.Close ();
  100. )
  101. në qoftë se (rdr! = NULL)
  102. (
  103. rdr.Close ();
  104. )
  105. )
  106. )
  107.  
  108. / / Drejtuar një procedurë të ruajtura që merr një parametër të
  109. RunStoredProcParams publike pavlefshëm ()
  110. (
  111. conn SqlConnection = NULL;
  112. rdr SqlDataReader = NULL;
  113.  
  114. / / Marrë në mënyrë tipike nga përdorues
  115. / / INPUT, por kemi marrë një prerje të shkurtër
  116. custId string = "FURIB";
  117.  
  118. Console.WriteLine ("\ Rendit nCustomer Historia: \ n");
  119.  
  120. përpjekje
  121. (
  122. / / Krijojë dhe të hapur një objekt lidhje
  123. conn = reja
  124. SqlConnection ("Server = (lokale), DataBase = Northwind; Integruar të Sigurimit = SSPI");
  125. conn.OPEN ();
  126.  
  127. / / 1. të krijojë një komandë objekt të identifikuar
  128. / / Ruajtur procedura
  129. SqlCommand cmd SqlCommand = NEW (
  130. "CustOrderHist", conn);
  131.  
  132. / / 2. vendosur objektin komandën kështu që e di
  133. / / Për të ekzekutuar një procedurë të depozituara
  134. cmd.CommandType = CommandType.StoredProcedure;
  135.  
  136. / / 3. ADD parametër të komandës, të cilat
  137. / / Do të kalojë në procedurë të ruajtura
  138. cmd.Parameters.ADD (
  139. ri SqlParameter ("@ CustomerID", custId));
  140.  
  141. / / Ekzekutojë komandën
  142. = Rdr cmd.ExecuteReader ();
  143.  
  144. / / Iterate nëpërmjet rezultateve, shtypjen e çdo të tastierë
  145. ndërsa (rdr.READ ())
  146. (
  147. Console.WriteLine (
  148. "Produkti: (0, -35) Gjithsej: (1,2)",
  149. rdr ["PRODUCTNAME"],
  150. rdr ["Total"]);
  151. )
  152. )
  153. më në fund
  154. (
  155. në qoftë se (lidhje! = NULL)
  156. (
  157. conn.Close ();
  158. )
  159. në qoftë se (rdr! = NULL)
  160. (
  161. rdr.Close ();
  162. )
  163. )
  164. )
  165. )
  166. Metoda e RunStoredProc në Listing 1 thjesht shkon një procedurë të ruajtur dhe printime rezultatet në tastierë. Në metodën e RunStoredProcParams, procedura e ruajtur përdorur merr një parametër të vetëm. Kjo tregon se nuk ka dallim në mes duke përdorur parametrat me vargjet pyetje dhe procedurat e ruajtura. Pjesa tjetër e kodit duhet të jenë të njohura për ata që kanë lexuar mësimet e mëparshme në këtë tutorial.
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top