Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

ExecuteNonQuery () सम्मिलित करने के लिए

इस कोड में कुछ समस्याएं हैं।

सबसे महत्वपूर्ण यह है कि आप कमांड का कनेक्शन संपत्ति, इसलिए कमांड के पास यह जानने का कोई तरीका नहीं है कि डेटाबेस से कैसे जुड़ना है।

मैं का उपयोग करके , और साथ ही पैरामीटरिंग आपकी क्वेरी:

अंत में, जब तक आपको आवश्यकता न हो, फ़ंक्शन के बाहर कनेक्शन और कमांड की घोषणा न करें। आपको कनेक्शन और कमांड को केवल तब तक ही रखना चाहिए जब तक आपको उनकी आवश्यकता हो।

तो आपका फ़ंक्शन इस तरह दिखेगा:

Public Function add(ByVal area As String, ByVal user As String) As Integer

    Dim mydao As New Connection

    Using connection As New SqlConnection(mydao.ConnectionString())

        Using command As New SqlCommand()
            ' Set the connection
            command.Connection = connection 

            ' Not necessary, but good practice
            command.CommandType = CommandType.Text 

            ' Example query using parameters
            command.CommandText = "INSERT into Area (Area, user) VALUES (@area, @user)" 

            ' Adding the parameters to the command
            command.Parameters.AddWithValue("@area", area)
            command.Parameters.AddWithValue("@user", user)

            connection.Open()

            Return command.ExecuteNonQuery()

        End Using ' Dispose Command

    End Using ' Dispose (and hence Close) Connection

End Function

ध्यान दें कि वर्तमान में, आप हर समय 0 पर लौटेंगे। फ़ंक्शन से लौटाए गए मान की जांच करने के बजाय, उपरोक्त उदाहरण केवल एक अपवाद फेंक देगा। यह थोड़ा क्लीनर कोड बनाता है (क्योंकि कॉलर को यह समझना होगा कि 0 एक त्रुटि स्थिति है), और, यदि आपको अपवाद को संभालने की आवश्यकता है, तो बस इस फ़ंक्शन पर कॉल को Try-Catch ब्लॉक करें




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL सर्वर में विभिन्न फ़ील्ड से अधिकतम मान प्राप्त करें और संबंधित मान दिखाएं

  2. SQL सर्वर - sp_spaceused के आंतरिक भाग को विच्छेदित करें

  3. माता-पिता के सभी बच्चों (वंशजों) को प्राप्त करने के लिए सीटीई

  4. कैसे एसक्यूएल चयन में कुछ मूल्यों के साथ रिकॉर्ड को बाहर करने के लिए?

  5. सी # का उपयोग कर स्क्रिप्ट कार्य में चर लॉक करें