मैं तालिका स्तंभ को बदलने योग्य होना चाहता हूं। मैंने उपयोग कर लिया है:
ALTER TABLE Merchant_Pending_Functions Modify NumberOfLocations NULL
इस पर एक त्रुटि देता है Modify। सही सिंटैक्स क्या है?
मैं तालिका स्तंभ को बदलने योग्य होना चाहता हूं। मैंने उपयोग कर लिया है:
ALTER TABLE Merchant_Pending_Functions Modify NumberOfLocations NULL
इस पर एक त्रुटि देता है Modify। सही सिंटैक्स क्या है?
जवाबों:
Oracle डाटाबेस 10g उपयोगकर्ताओं के लिए:
alter table mytable modify(mycolumn null);
जब आप अन्यथा प्रयास करते हैं तो आपको "ORA-01735: अमान्य अलर्ट विकल्प" मिलता है
ALTER TABLE mytable ALTER COLUMN mycolumn DROP NOT NULL;
हालाँकि मुझे नहीं पता कि आप आरडीबीएमएस का उपयोग क्या कर रहे हैं, आपको संभवतः पूरे कॉलम विनिर्देश देने की ज़रूरत है, न कि केवल यह कहें कि अब आप इसे अशक्त होना चाहते हैं। उदाहरण के लिए, यदि यह वर्तमान में है INT NOT NULL, तो आपको जारी करना चाहिए ALTER TABLE Merchant_Pending_Functions Modify NumberOfLocations INT।
Null| NOT NULLनिर्दिष्ट नहीं है, कॉलम अशक्त होगा।
जैसा कि दूसरों ने देखा है, कमांड के लिए सटीक सिंटैक्स DBMS के विभिन्न स्वादों में भिन्न होता है। Oracle में आपके द्वारा उपयोग किए गए सिंटैक्स:
SQL> desc MACAddresses
Name Null? Type
----------------------------------------- -------- ----------------------------
COMPUTER NUMBER
MACADDRESS VARCHAR2(12)
CORRECTED_MACADDRESS NOT NULL VARCHAR2(17)
SQL> alter table MACAddresses
2 modify corrected_MACAddress null
3 /
Table altered.
SQL> desc MACAddresses
Name Null? Type
----------------------------------------- -------- ----------------------------
COMPUTER NUMBER
MACADDRESS VARCHAR2(12)
CORRECTED_MACADDRESS VARCHAR2(17)
SQL>
ALTER TABLE Merchant_Pending_Functions MODIFY COLUMN `NumberOfLocations` INT null;
यह आपके काम आएगा।
यदि आप अशक्त करने के लिए एक अशक्त स्तंभ को बदलना चाहते हैं, तो शून्य संलयन को शामिल करने की आवश्यकता नहीं है। क्योंकि डिफ़ॉल्ट कॉलम शून्य नहीं मिलते हैं।
ALTER TABLE Merchant_Pending_Functions MODIFY COLUMN `NumberOfLocations` INT;
यह इस बात पर निर्भर करता है कि आप जो SQL इंजन का उपयोग कर रहे हैं, Sybase में आपकी कमांड ठीक काम करती है:
ALTER TABLE Merchant_Pending_Functions
Modify NumberOfLocations NULL;
आकाशवाणी
ALTER TABLE Merchant_Pending_Functions MODIFY([column] NOT NULL);