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

आप TSQL का उपयोग करके डेटाबेस में सभी तालिकाओं को कैसे काटते हैं?

टेबल से डेटा हटाने से निपटने के दौरान, जिसमें विदेशी कुंजी संबंध होते हैं - जो मूल रूप से किसी भी उचित रूप से डिज़ाइन किए गए डेटाबेस के मामले में होता है - हम सभी बाधाओं को अक्षम कर सकते हैं, सभी डेटा हटा सकते हैं और फिर बाधाओं को फिर से सक्षम कर सकते हैं

-- disable all constraints
EXEC sp_MSForEachTable "ALTER TABLE ? NOCHECK CONSTRAINT all"

-- delete data in all tables
EXEC sp_MSForEachTable "DELETE FROM ?"

-- enable all constraints
exec sp_MSForEachTable "ALTER TABLE ? WITH CHECK CHECK CONSTRAINT all"

बाधाओं और ट्रिगर को अक्षम करने के बारे में अधिक जानकारी यहां

अगर कुछ तालिकाओं में पहचान कॉलम हैं तो हम उन्हें फिर से देखना चाहेंगे

EXEC sp_MSForEachTable "DBCC CHECKIDENT ( '?', RESEED, 0)"

ध्यान दें कि RESEED का व्यवहार एकदम नई तालिका, और एक जिसमें BOL से पहले कुछ डेटा डाला गया था, के बीच भिन्न होता है:

<ब्लॉकक्वॉट>

DBCC CHECKIDENT ('table_name', RESEED, newReseedValue)

वर्तमान पहचान मान newReseedValue पर सेट है। यदि तालिका बनाने के बाद से कोई पंक्तियाँ सम्मिलित नहीं की गई हैं, तो DBCC CHECKIDENT को क्रियान्वित करने के बाद सम्मिलित पहली पंक्ति पहचान के रूप में newReseedValue का उपयोग करेगी। अन्यथा, डाली गई अगली पंक्ति newReseedValue + 1 का उपयोग करेगी। यदि newReseedValue का मान पहचान कॉलम में अधिकतम मान से कम है, त्रुटि संदेश 2627 तालिका के बाद के संदर्भों पर उत्पन्न होगा।

रॉबर्ट को इस तथ्य को इंगित करने के लिए धन्यवाद कि बाधाओं को अक्षम करने से ट्रंकेट का उपयोग करने की अनुमति नहीं मिलती है, बाधाओं को छोड़ना होगा, और फिर फिर से बनाना होगा



  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 सर्वर में दिनांक से दिन का नाम प्राप्त करने के 3 तरीके (T-SQL)

  2. SQL सर्वर डेटाबेस (T-SQL उदाहरण) में सभी विदेशी कुंजियाँ लौटाएँ और बाधाओं की जाँच करें

  3. SQL सर्वर (T-SQL) में दिनांक और समय कार्यों की सूची

  4. SQL सर्वर में LEFT ANTI SEMI JOIN कैसे करें?

  5. SQL सर्वर - SQL सर्वर / T-SQL ट्यूटोरियल भाग 38 में GUI का उपयोग करके कॉलम कैसे बदलें या स्क्रिप्ट बदलें