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

तालिका में परिवर्तन करें फिर एकल कथन में अद्यतन करें

आप ऐसा नहीं कर सकते बिल्कुल एक ही कथन (या बैच) में और ऐसा लगता है कि आप जिस टूल का उपयोग कर रहे हैं वह GO . का समर्थन नहीं करता है बैच सीमांकक के रूप में।

आप EXEC . का उपयोग कर सकते हैं हालांकि इसे एक बच्चे के बैच में चलाने के लिए।

ALTER TABLE A
  ADD c1 INT, c2 VARCHAR(10);

EXEC('
UPDATE A
SET    c1 = 23,
       c2 = ''ZZXX'';
    ');

एनबी:क्वेरी में सभी सिंगल कोट्स को एक स्ट्रिंग अक्षर के अंदर से बचने के लिए ऊपर के रूप में दोगुना करने की आवश्यकता है।

या वैकल्पिक रूप से आप कुछ डिफ़ॉल्ट बाधाओं की सहायता से एक ही कथन में समान परिणाम प्राप्त कर सकते हैं।

ALTER TABLE A
  ADD c1 INT NULL CONSTRAINT DF_A_c1 DEFAULT 23 WITH VALUES, 
     c2 VARCHAR(10) CONSTRAINT DF_A_c2 NULL DEFAULT 'ZZXX' WITH VALUES;

लेकिन यह बिल्कुल मूल क्वेरी के समान नहीं है क्योंकि डिफ़ॉल्ट बाधाएं पीछे रह जाएंगी और उन्हें छोड़ने की आवश्यकता हो सकती है।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SqlServer में Asp.Net 4.0 भंडारण सत्र

  2. AJAX के साथ डीबी क्वेरी (एसक्यूएल सर्वर 2005) चलाएं। क्या यह संभव है?

  3. दिनांक सीमाओं के बीच दिनांक उत्पन्न करें

  4. SQL सर्वर में SHOWPLAN_XML कैसे काम करता है

  5. मैं एक प्रकार से अस्थायी तालिका कैसे बना सकता हूं?