我想将表列更改为可为空.我用过:
ALTER TABLE Merchant_Pending_Functions Modify NumberOfLocations NULL
Run Code Online (Sandbox Code Playgroud)
这会给出错误Modify.什么是正确的语法?
Qua*_*noi 469
假设SQL Server(根据您之前的问题):
ALTER TABLE Merchant_Pending_Functions ALTER COLUMN NumberOfLocations INT NULL
Run Code Online (Sandbox Code Playgroud)
替换INT为您的实际数据类型.
Igo*_* S. 41
对于Oracle数据库10g用户:
alter table mytable modify(mycolumn null);
Run Code Online (Sandbox Code Playgroud)
如果不这样做,会得到"ORA-01735:无效的ALTER TABLE选项"
ALTER TABLE mytable ALTER COLUMN mycolumn DROP NOT NULL;
Run Code Online (Sandbox Code Playgroud)
djj*_*eck 38
如果这是MySQL语法,那么类型就会丢失,正如其他一些响应所指出的那样.正确的MySQL语法应该是:
ALTER TABLE Merchant_Pending_Functions MODIFY NumberOfLocations INT NULL
Run Code Online (Sandbox Code Playgroud)
为了清楚MySQL用户,请在此处发布.
Pau*_*eau 26
在PostgresQL中它是:
ALTER TABLE tableName ALTER COLUMN columnName DROP NOT NULL;
Run Code Online (Sandbox Code Playgroud)
小智 13
对于 SQL Server 或 TSQL
ALTER TABLE Complaint.HelplineReturn ALTER COLUMN IsDisposed BIT NULL
Run Code Online (Sandbox Code Playgroud)
虽然我不知道您使用的是什么RDBMS,但您可能需要提供整个列规范,而不仅仅是说您现在希望它可以为空.例如,如果它是当前的INT NOT NULL,您应该发布ALTER TABLE Merchant_Pending_Functions Modify NumberOfLocations INT.