"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > टेबल-मूल्यवान पैरामीटर SQL संग्रहीत प्रक्रिया प्रदर्शन और कोड सादगी में सुधार कैसे कर सकते हैं?

टेबल-मूल्यवान पैरामीटर SQL संग्रहीत प्रक्रिया प्रदर्शन और कोड सादगी में सुधार कैसे कर सकते हैं?

2025-02-26 को पोस्ट किया गया
ब्राउज़ करें:267

] डेटा हेरफेर में एक सामान्य चुनौती। जबकि पारंपरिक दृष्टिकोणों में पुनरावृत्त रूप से पारित करने वाले पैरामीटर मान शामिल होते हैं या स्ट्रिंग हेरफेर का उपयोग करते हुए, एक अधिक कुशल समाधान उपलब्ध है।

How Can Table-Valued Parameters Improve SQL Stored Procedure Performance and Code Simplicity?

समाधान: SQL सर्वर 2008 में तालिका-मूल्यवान पैरामीटर

SQL सर्वर 2008 ने तालिका-मूल्यवान मापदंडों को पेश किया, जो एक संग्रहीत प्रक्रिया के लिए एक पैरामीटर के रूप में संरचित डेटा के संग्रह को पारित करने की अनुमति देते हैं। यह जटिल स्ट्रिंग हेरफेर या पुनरावृत्त पैरामीटर हैंडलिंग की आवश्यकता को समाप्त कर देता है। ( @Reportid int, @Items के रूप में ItemList-उपयोगकर्ता-परिभाषित तालिका प्रकार ) जैसा शुरू रिपोर्ट में डालें @Reportid का चयन करें, पहचान @Items से

आइटम सूची के लिए कस्टम टेबल प्रकार

आइटम सूची के लिए एक कस्टम तालिका प्रकार बनाने के लिए, निम्न SQL स्टेटमेंट को निष्पादित करें:

क्रिएट टाइप करें टेबल के रूप में आइटम ( में नहीं )

ALTER PROCEDURE AddItemsToReport
(
  @ReportId int,
  @Items AS ItemList -- User-defined table type
)
AS
BEGIN
  INSERT INTO ReportItem (ReportId, ItemId)
  SELECT  @ReportId,
            Id
  FROM    @Items
END
अपने C# कोड में C#

से तालिका-मूल्यवान पैरामीटर पास करना, कस्टम तालिका प्रकार का एक उदाहरण बनाएं:

ItemList (); itemlist.rows.add (1); itemlist.rows.add (2); itemlist.rows.add (3); ;

पैरामीटर
ALTER PROCEDURE AddItemsToReport
(
  @ReportId int,
  @Items AS ItemList -- User-defined table type
)
AS
BEGIN
  INSERT INTO ReportItem (ReportId, ItemId)
  SELECT  @ReportId,
            Id
  FROM    @Items
END

डेटाबेस में कई राउंड ट्रिप से बचकर प्रदर्शन में सुधार हुआ। इनपुट डेटा को दृढ़ता से टाइप करके।

नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3