MSDN पर आधारित:
<ब्लॉकक्वॉट>UPDATE, INSERT, और DELETE स्टेटमेंट के लिए, रिटर्न वैल्यू कमांड से प्रभावित पंक्तियों की संख्या है। जब किसी तालिका को सम्मिलित या अद्यतन किए जाने पर ट्रिगर मौजूद होता है, तो वापसी मान में सम्मिलित या अद्यतन कार्रवाई दोनों से प्रभावित पंक्तियों की संख्या और ट्रिगर या ट्रिगर से प्रभावित पंक्तियों की संख्या शामिल होती है। अन्य सभी प्रकार के बयानों के लिए, वापसी मूल्य -1 है। यदि कोई रोलबैक होता है, तो वापसी मान भी -1 होता है।
आप कमांड से प्रभावित पंक्तियों की संख्या वापस करना चाहते हैं और इसे int
. में सहेजना चाहते हैं परिवर्तनशील लेकिन चूंकि स्टेटमेंट का प्रकार select
. है तो यह -1
returns लौटाता है ।
समाधान :यदि आप सेलेक्ट कमांड से प्रभावित पंक्तियों की संख्या प्राप्त करना चाहते हैं और इसे एक इंट वेरिएबल में सहेजना चाहते हैं तो आप ExecuteScalar
का उपयोग कर सकते हैं ।
var theCount = (int)cmd.ExecuteScalar();