C# Execute Stored Procedures: जिस तरह से Strongly Typed DataSet Designer Window में हम Tables को Drag-and-Drop तकनीक द्वारा Add कर सकते हैं, उसी तरह से हम उसी DataSet Designer में किसी Stored Procedure को भी Add कर सकते हैं।
उदाहरण के लिए मानलो कि हम हमारे इसी Project में अपने DataSet में spGetProductName() नाम के Stored Procedure को Drag कर लेते हैं, तो इसे Drag करने के बाद हमारा Designer कुछ निम्नानुसार दिखाई देने लगता है:
जब हम किसी Stored Procedure को अपने Visual DataSet Designer में Drag करते हैं, तो Visual Studio स्वयं ही QueriesTableAdapter नाम का एक नया Type Create कर देता है, जिसमें हमारे सभी Stored Procedures को Invoke करने की Processing Encapsulated रहती है।
उदाहरण के लिए यदि हम हमारे Stored spGetProductName() Procedure को Execute करना चाहें, तो Strongly Typed QueriesTableAdapter Object को इस जरूरत को पूरा करने के लिए निम्नानुसार Use कर सकते हैं:
public static void CallStoredProcedure() { try { dsNWTableAdapters.QueriesTableAdapter q = new dsNWTableAdapters.QueriesTableAdapter (); Console.Write("Enter ID of product to look up: "); string productID= Console.ReadLine(); string productName = ""; q.spGetProductName(int.Parse(productID), ref productName); Console.WriteLine("Product ID {0} has the name of {1}", productID, productName); } catch (Exception ex) { Console.WriteLine(ex.Message); } }
चूंकि Strongly Typed DataSet Types किसी भी प्रकार के Application के लिए समान प्रकार से काम करते हैं, इसलिए इस उदाहरण में हमने एक Console Mode Method Create किया है, जिसे कि किसी Console Mode Application में Call करे पर ये Method Product का ID व Name Display करता है।
इस Method में Stored Procedure को Invoke करने के लिए सबसे पहले हमें निम्न Statement द्वारा एक dsNWTableAdapters.QueriesTableAdapter Type का q नाम का Object Create किया है:
dsNWTableAdapters.QueriesTableAdapter q = new dsNWTableAdapters.QueriesTableAdapter ();
फिर निम्न Statement द्वारा Keyboard से एक Product ID को Read किया है और उस Product ID को productID नाम के String Type के Object में Store किया है:
Console.Write(“Enter ID of product to look up: “);
string productID= Console.ReadLine();
फिर productName नाम का एक String Type का Object Create किया है और इस Object को Empty String Value Set किया है:
string productName = “”;
इस प्रकार से productID को अपने Stored Procedure के Input Parameter के रूप में Specify किया है जबकि productName Object को Output Parameter के रूप में। दोनों Objects को Setup करने के बाद निम्न Statement के माध्यम से spGetProductName() नाम के Stored Procedure को Invoke किया है:
q.spGetProductName(int.Parse(productID), ref productName);
चूंकि हमारे Stored Procedure को पहले Argument के रूप में एक Integer Type का मान चाहिए, इसलिए पहले Parameter को हमने int.Parse() Method का प्रयोग करके Integer Value के रूप में Convert करके Specify किया है।
जबकि दूसरा Parameter एक Output Parameter होने की वजह से इसे ref Keyword के साथ Specify किया है, क्योंकि Stored Procedure इस दूसरे Parameter में Underlying Database की Products Table से पहले Parameter के रूप में Specify किए गए Product ID वाले Product के नाम को Store करेगा, जिसे फिर से Frontend Application में उसी स्थिति में Use किया जा सकता है, जबकि उसे किसी ऐसे Object में Store किया गया जाए, जिसे ref या out Keyword के साथ दूसरे Parameter के रूप में Specify किया गया हो।
हालांकि इस Section में हमने एक Practical Example Program द्वारा Strongly Typed DataSet Object को Use करते हुए अपना Windows Forms Application Program Develop करने के बारे में जाना। लेकिन इसके अलावा Strongly Typed Objects को हम और भी कई तरीकों से व कई प्रकार की Requirements को पूरा करने के लिए Use कर सकते हैं।
ये Article इस वेबसाईट पर Selling हेतु उपलब्ध EBook ADO.NET with C# in Hindi से लिया गया है। इसलिए यदि ये Article आपके लिए उपयोगी रहा, तो निश्चित रूप से ये पुस्तक भी आपके लिए काफी उपयोगी साबित होगी।
ADO.NET with C# in Hindi | Page:501 | Format: PDF