मेरे पास एक डेटाबेस है जिसमें मेरे पास बहुत कम प्रकार के कॉलम हैं। अन्य कॉलम जोड़ने के बाद मुझे सभी पुराने कॉलमों को डिफ़ॉल्ट "गलत" मान रखने की आवश्यकता है।MSSQL में सभी डेटाबेस में सभी बिट प्रकार कॉलम नल मानों को गलत में कैसे बदलें?
उत्तर
0 करने के लिए प्रत्येक वर्ष स्तंभ अपडेट करने के लिए इस क्वेरी (एक कॉलम-दर-स्तंभ के आधार पर) का उपयोग कर सकते हैं: फिर,
UPDATE MyTable
SET OldCol1 = 0
WHERE OldCol1 IS NULL
यदि आप के रूप में 0 से डिफ़ॉल्ट के लिए भविष्य के किसी भी मान चाहते हैं अच्छा, इसका उपयोग करें:
ALTER TABLE MyTable
ALTER COLUMN OldCol1 bit NOT NULL
ALTER TABLE MyTable
ADD CONSTRAINT OldCol1ShouldBeFalse DEFAULT 0 FOR OldCol1
अब, आपको प्रत्येक पुराने कॉलम के खिलाफ इसे चलाने की ज़रूरत होगी, इसलिए उम्मीद है कि आपके पास बहुत अधिक नहीं हैं।
यह नेस्टेड गतिशील एसक्यूएल नौकरी प्राप्त करेगा यदि आप इसे एक-एक करके नहीं करना चाहते हैं। ध्यान दें कि यह सत्यापित करने के लिए पहले कोई जांच नहीं करता है कि कॉलम में पहले से ही एक डिफ़ॉल्ट बाधा नहीं है (जो संभव है, भले ही कॉलम निरर्थक हो), लेकिन स्क्रिप्ट को ऐसा करने के लिए बढ़ाया जा सकता है (और यहां तक कि ड्रॉप भी यदि यह डिफ़ॉल्ट है तो ऐसी बाधा 1)।
DECLARE @sql NVARCHAR(MAX);
SET @sql = N'DECLARE @sql NVARCHAR(MAX); SET @sql = N'''';';
SELECT @sql = @sql + N'
SELECT @sql = @sql + N''UPDATE ' + QUOTENAME(name)
+ '.'' + QUOTENAME(s.name) + ''.'' + QUOTENAME(t.name) + ''
SET '' + QUOTENAME(c.name) + '' = 0
WHERE '' + QUOTENAME(c.name) + '' IS NULL;
ALTER TABLE ' + QUOTENAME(name) + '.'' + QUOTENAME(s.name)
+ ''.'' + QUOTENAME(t.name)
+ '' ADD CONSTRAINT '' + c.name + ''_FalseByDefault
DEFAULT (0) FOR '' + QUOTENAME(c.name) + '';
ALTER TABLE ' + QUOTENAME(name) + '.'' + QUOTENAME(s.name)
+ ''.'' + QUOTENAME(t.name)
+ '' ALTER COLUMN '' + QUOTENAME(c.name) + '' BIT NOT NULL;
''
FROM ' + QUOTENAME(name) + '.sys.columns AS c
INNER JOIN ' + QUOTENAME(name) + '.sys.tables AS t
ON c.[object_id] = t.[object_id]
INNER JOIN ' + QUOTENAME(name) + '.sys.schemas AS s
ON t.[schema_id] = s.[schema_id]
WHERE c.system_type_id = 104 AND c.is_nullable = 1
AND t.is_ms_shipped = 0;'
FROM sys.databases WHERE database_id > 4;
SET @sql = @sql + 'PRINT @sql;
--EXEC sp_executesql @sql;';
EXEC sp_executesql @sql;
यह को देखने के लिए वास्तव में बदसूरत है, और PRINT
आदेश जरूरी प्रबंधन स्टूडियो में उत्पादन सीमाओं के कारण पूरा नहीं होगा। लेकिन एक बार जब आप आश्वस्त हो जाते हैं कि पहले कुछ कमांड सही दिखते हैं, तो आप टिप्पणी कर सकते हैं और दूसरी अंतिम पंक्ति को असम्बद्ध कर सकते हैं और परिवर्तन करने के लिए स्क्रिप्ट को फिर से चला सकते हैं। जाओ वहाँ है क्योंकि कुछ असफल हो सकते हैं। आप प्रत्येक डीबी/टेबल/कॉलम संयोजन के लिए प्रिंट आउटपुट जोड़ना चाह सकते हैं ताकि आप वास्तविक डीबी/टेबल/कॉलम के साथ किसी भी संभावित त्रुटियों को अधिक आसानी से सहसंबंधित करने के लिए स्थिति संदेशों को प्रिंट कर सकें।
- 1. MySQL सभी नल कॉलम
- 2. उत्पादन डेटाबेस में कॉलम डेटा प्रकार बदलें
- 3. डेटाबेस में सभी तालिकाओं का नाम बदलें
- 4. डेटा.फ्रेम में किसी कॉलम के सभी मानों को कैसे समेटें?
- 5. पोस्टग्रेज़: कॉलम में सभी मानों को एक से अपडेट करें?
- 6. सभी 0 मानों को NA
- 7. किसी सरणी में सभी मानों को जांचें
- 8. डेटाबेस कॉलम में सभी अलग-अलग मानों के लिए घटनाओं की संख्या की गणना कैसे करें?
- 9. निर्देशिका में सभी फ़ाइलों में किसी शब्द के सभी घटनाओं को कैसे बदलें
- 10. सभी को बदलें "?" साथ में "\\?" जावा
- 11. ऑरैकल डेटाबेस कॉलम में विशिष्ट मानों को कैसे प्रतिस्थापित करें?
- 12. शब्दकोश में सभी मानों को कैसे बदलें <string, bool>?
- 13. MySQL डेटाबेस में सभी पंक्तियों
- 14. mysql डेटाबेस में सभी तालिका को मिटाएं
- 15. मैट्रिक्स में सभी मानों को कैसे गोल करें?
- 16. पायथन sys.path में सभी मानों को कैसे लोड करता है?
- 17. एक विशाल तालिका में कॉलम प्रकार बदलें
- 18. एक्सेल में, प्रत्येक पंक्ति में एक कॉलम में सभी मानों को योग करें जहां एक और कॉलम एक विशिष्ट मान
- 19. R प्रकार कारक के सभी कॉलम को संख्यात्मक
- 20. एच 2 डेटाबेस में enum प्रकार को कैसे बदलें?
- 21. क्लॉज सभी पंक्तियों को वापस करने में गलत मूल्य?
- 22. ऑरैक डेटाबेस में किसी तालिका के कॉलम के सभी मेटाडेटा को कैसे देखें?
- 23. ग्रहण सभी वर्गों में टेक्स्ट बदलें?
- 24. ग्रहण में गलत समय। इसे कैसे बदलें?
- 25. यूटीएफ 8 चरित्र सेट में मेरे डेटाबेस में सभी टेबल कैसे बदलें?
- 26. सभी व्हाइटस्पेस वर्णों को बदलें
- 27. एक MySQL डेटाबेस में सभी तालिकाओं को कैसे हटाएं?
- 28. एक HSQLDB डेटाबेस में सभी तालिकाओं को कैसे देखें?
- 29. कैसे डेटाबेस में सभी prolog नियमों को खोजने के लिए
- 30. postgresql डेटाबेस में कॉलम नामों का नाम बदलें