添加新列时出现ALTER TABLE错误

时间:2013-07-31 09:26:56

标签: mysql alter-table

    ALTER TABLE mytable ADD mycolumn INT NOT NULL DEFAULT(0)

执行此操作时,我收到此错误:#1064 - 您的SQL语法出错;检查与MySQL服务器版本对应的手册,以便在第2行的“(0)”附近使用正确的语法

知道为什么吗?谢谢!

4 个答案:

答案 0 :(得分:0)

尝试:

ALTER TABLE mytable ADD mycolumn INT NOT NULL DEFAULT '0'

答案 1 :(得分:0)

从默认值中删除括号。

答案 2 :(得分:0)

DEFAULT子句的语法只接受而不是表达式(甚至是常量)。见http://dev.mysql.com/doc/refman/5.0/en/data-type-defaults.html

  

数据类型规范中的DEFAULT值子句表示a   列的默认值。除了一个例外,默认值必须   是一个常数;它不能是一种功能或表达。


具体而言,您必须删除括号:

ALTER TABLE mytable ADD mycolumn INT NOT NULL DEFAULT 0

答案 3 :(得分:0)

试试这个:

ALTER TABLE mytable ADD mycolumn INT NOT NULL DEFAULT 0;