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

डेटाटाइप चार को नवरचर में कनवर्ट करना

INFORMATION_SCHEMA.COLUMNS से ​​चयन करना यह निर्धारित करने का एक अच्छा तरीका है कि किन स्तंभों को परिवर्तित करने की आवश्यकता है,

SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE DATA_TYPE = 'CHAR';

लेकिन इसका उपयोग किसी कॉलम के डेटा प्रकार को सीधे बदलने के लिए नहीं किया जा सकता है। टेबल बदलें स्तंभ डेटा प्रकारों को संशोधित करने के लिए उपयोग किया जाता है:

ALTER TABLE [dbo].[TableName] ALTER COLUMN [ColumnName] NVARCHAR(50);

जब आप इसमें हों, तो NVARCHAR(MAX) . का उपयोग करने से बचें जब तक कि यह बिल्कुल जरूरी न हो। सुनिश्चित करें कि आपके डेटा प्रकार विशेष रूप से विशेषता के लिए आकार में हैं। अगर आपका CHAR कॉलम पहले से ही सही आकार में हैं, निम्न स्क्रिप्ट का उपयोग उत्पन्न करने के लिए . करें ALTER TABLE बयान:

SELECT  'ALTER TABLE ' +
        QUOTENAME(TABLE_SCHEMA) + '.' +
        QUOTENAME(TABLE_NAME) +
        ' ALTER COLUMN ' +
        QUOTENAME(COLUMN_NAME) +
        ' NVARCHAR(' +
        CAST(CHARACTER_MAXIMUM_LENGTH AS VARCHAR(4)) + ');'
FROM    INFORMATION_SCHEMA.COLUMNS
WHERE   DATA_TYPE = 'char';

ध्यान रखें कि यह केवल ALTER TABLE स्टेटमेंट जेनरेट करता है, डेटा प्रकार बदलने के लिए आपको परिणामों की प्रतिलिपि बनाने और एक नए टैब में निष्पादित करने की आवश्यकता होगी।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. अल्पविराम से अलग किए गए स्ट्रिंग को कॉलम में विभाजित करें

  2. थकाऊ या सीक्वेलाइज़ `findOne ()` . के लिए गलत सिंटैक्स का उपयोग करता है

  3. मैं अपने डेटाबेस में सभी संग्रहीत प्रक्रियाओं के भीतर विशेष पाठ की सभी घटनाओं को कैसे ढूंढ सकता हूं?

  4. ')' के पास गलत सिंटैक्स GETDATE के साथ संग्रहित प्रक्रिया को बुला रहा है

  5. SQL सर्वर 2016 क्वेरी स्टोर GUI की खोज करना