2010-09-22 13 views

उत्तर

82

ALTER TABLE उपयोग कर रहा हूँ एक बयान में एकाधिक तालिका परिवर्तन कर सकते हैं, लेकिन MODIFY COLUMN एक बार में केवल एक स्तंभ पर काम कर सकते हैं, ताकि आप प्रत्येक स्तंभ के लिए MODIFY COLUMN निर्दिष्ट करने की आवश्यकता आप बदलना चाहते हैं:

ALTER TABLE webstore.Store 
    MODIFY COLUMN ShortName VARCHAR(100), 
    MODIFY COLUMN UrlShort VARCHAR(100); 

इसके अलावा, मैनुअल से इस चेतावनी पर ध्यान दें:

आप बदलें का उपयोग करें या संशोधित करते हैं, column_definition डेटा प्रकार और सभी विशेषताओं कि नया स्तंभ पर लागू करना चाहिए, सूचकांक के अलावा अन्य शामिल करना चाहिए प्राथमिक के रूप में इस तरह के गुण कुंजी या यूएनआई क्यू। मूल परिभाषा में मौजूद गुण लेकिन नई परिभाषा के लिए निर्दिष्ट नहीं किए गए हैं।

+1

धन्यवाद - बहुत अच्छा !! – JoJo

2

निम्न सिंटैक्स का उपयोग:

ALTER TABLE your_table 
    MODIFY COLUMN column1 datatype, 
    MODIFY COLUMN column2 datatype, 
    ... ... ... ... ... 
    ... ... ... ... ... 

उस आधार पर, अपने ALTER आदेश होना चाहिए:

ALTER TABLE webstore.Store 
    MODIFY COLUMN ShortName VARCHAR(100), 
    MODIFY COLUMN UrlShort VARCHAR(100) 

ध्यान दें कि:

  1. कोई दूसरा कोष्ठक के आसपास रहे हैं MODIFY बयान।
  2. मैंने दो अलग-अलग कॉलम के लिए दो अलग MODIFY कथन का उपयोग किया।

यह एक MySQL तालिका में एकाधिक स्तंभों पर एक ALTER आदेश के लिए MODIFY बयान के मानक प्रारूप है।

निम्नलिखित पर एक नज़र डालें: http://dev.mysql.com/doc/refman/5.1/en/alter-table.html और Alter multiple columns in a single statement

संबंधित मुद्दे