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

मैं सी # से .sql कैसे निष्पादित कर सकता हूं?

using Microsoft.SqlServer.Management.Common;
using Microsoft.SqlServer.Management.Smo;

प्रश्नों को निष्पादित करने के लिए आपको एसएमओ की आवश्यकता नहीं होनी चाहिए। इसके बजाय SqlCommand ऑब्जेक्ट का उपयोग करने का प्रयास करें। बयानों का उपयोग करके इन्हें हटा दें। क्वेरी निष्पादित करने के लिए इस कोड का उपयोग करें:

 SqlConnection conn = new SqlConnection(sqlConnectionString);
 SqlCommand cmd = new SqlCommand(script, conn);
 cmd.ExecuteNonQuery();

साथ ही, एसएमओ के प्रोजेक्ट संदर्भ को हटा दें। नोट:आप संसाधनों को ठीक से साफ करना चाहेंगे।

अपडेट करें:

ADO.NET लाइब्रेरी 'GO' कीवर्ड का समर्थन नहीं करते . ऐसा लगता है कि आपके विकल्प हैं:

  1. स्क्रिप्ट को पार्स करें। 'GO' कीवर्ड हटाएं और स्क्रिप्ट को अलग-अलग बैचों में विभाजित करें। प्रत्येक बैच को अपने स्वयं के SqlCommand के रूप में निष्पादित करें।
  2. शेल में SQLCMD को स्क्रिप्ट भेजें (डेविड एंड्रेस का जवाब)।
  3. ब्लॉग पोस्ट के कोड की तरह SMO का उपयोग करें।

दरअसल, इस मामले में, मुझे लगता है कि एसएमओ सबसे अच्छा विकल्प हो सकता है, लेकिन आपको यह पता लगाना होगा कि डीएलएल क्यों नहीं मिला।



  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 सर्वर JDBC ड्राइवर के साथ PRINT परिणाम प्रदर्शित करने का कोई तरीका है?

  2. कैसे बाधा के साथ कॉलम ड्रॉप करने के लिए?

  3. सभी तालिकाओं के लिए SQL सर्वर डेटाबेस में विदेशी कुंजी बाधाओं को कैसे छोड़ें - SQL सर्वर / TSQL ट्यूटोरियल भाग 72

  4. क्या संग्रहीत प्रक्रिया का उपयोग करके मैक पता प्राप्त करना संभव है?

  5. SQL सर्वर में विदेशी कुंजी का उपयोग करने के लिए कोई गंभीर प्रदर्शन हिट है?