2008-08-12 7 views
27

अदिश-मान कार्यों से टेबल-वैल्यूड एसक्यूएल कार्य इस प्रकार नेट से कहा जा सकता है :कॉलिंग नेट

String query = "select * from testFunction(param1,...)"; //testFunction is table-valued 
SqlCommand cmd = new SqlCommand(query, sqlConn); 
SqlDataAdapter adapter = new SqlDataAdapter(cmd); 
adapter.Fill(tbl); 

मेरे सवाल है, टेबल-मान कार्यों संग्रहित प्रक्रियाओं के रूप में कहा जा सकता है, जैसे अदिश-मान कार्यों कर सकते हैं? (उदाहरण के लिए, मेरे पहले कोड स्निपेट को एक तालिका-मूल्यवान फ़ंक्शन के साथ दोहराएं और रिटर्नवैल्यू पैरामीटर के माध्यम से लौटाई गई तालिका प्राप्त करें)।

+1

@ChuckConway शीर्षक से सी # क्यों छोड़ रहा है? सी # टैग पर विचार करना वैध था ... लेकिन वह टैग Google में दिखाने के लिए इसकी सहायता नहीं करता है। –

उत्तर

19

नहीं क्योंकि आपको उन्हें चुनने की आवश्यकता है। हालांकि आप एक संग्रहित प्रो रैपर बना सकते हैं, जो टेबल फ़ंक्शन होने के बिंदु को हरा सकता है।

+0

मुझे नहीं लगता कि यह वास्तव में एक टेबल-मूल्यवान फ़ंक्शन होने के बिंदु को हरा देगा। टीवीएफ रखने का एक बिंदु यह है कि उनके पास कुछ सुरक्षा गारंटी है कि संग्रहित प्रक्रियाएं नहीं होती हैं। एक और मुद्दा यह है कि उनका पुन: उपयोग किया जा सकता है, जबकि प्रतिलिपि बनाने और चिपकाने के बिना संग्रहीत प्रक्रिया का पुन: उपयोग करना अधिक कठिन होता है। – user420667