MySQL 5.0.45 服務器
修改表以容許列爲空的語法是什麼,或者替換爲何錯誤: spa
ALTER mytable MODIFY mycolumn varchar(255) null;
我將手冊解釋爲只運行上面的內容,它會從新建立列,此次容許爲null。 服務器告訴我我有語法錯誤。 我只是沒有看到他們。 線程
在某些狀況下(若是你獲得「ERROR 1064(42000):你的SQL語法有錯誤; ......」)你須要作code
ALTER TABLE mytable MODIFY mytable.mycolumn varchar(255);
您須要如下內容: it
ALTER TABLE mytable MODIFY mycolumn VARCHAR(255);
默認狀況下,列能夠爲空。 只要列未聲明爲UNIQUE
或NOT NULL
,就不會有任何問題。 table
您的語法錯誤是由查詢中缺乏「表」引發的語法
ALTER TABLE mytable MODIFY mycolumn varchar(255) null;
使用: ALTER TABLE mytable MODIFY mycolumn VARCHAR(255);
查詢
個人解決方案與@Krishnrohit相同: tab
ALTER TABLE `table` CHANGE `column_current_name` `new_column_name` DATETIME NULL;
我實際上將列設置爲NOT NULL
可是使用上面的查詢它被更改成NULL
。 解決方案
PS我知道這是一個老線程,但沒有人彷佛認可CHANGE
也是正確的。