将列插入表的语法

时间:2011-10-10 13:27:57

标签: mysql sql phpmyadmin mysqli mysql-error-1064

是否可以将列插入MySQL表?

我创建了一个表并命名为“my_table” - 我不明白,为什么MySQL不会吃掉我的语法...

INSERT INTO "my_table"(
    "item" char(1) NOT NULL DEFAULT '',
    "price" int(10) NOT NULL DEFAULT '3000',
    "level" int(10) NOT NULL DEFAULT '1000',
    "super" char(1) NOT NULL DEFAULT '',
    "play" char(1) NOT NULL DEFAULT ''
)

错误讯息:

  

1064 - 您的SQL语法出错;检查与MySQL服务器版本对应的手册,以便在“my_table”附近使用正确的语法(“item”char(1)NOT NULL DEFAULT'',“price”i'在第1行

那我的语法出了什么问题?

2 个答案:

答案 0 :(得分:4)

如果您尝试将列添加到已创建的表中,则必须使用ALTER。

ALTER TABLE my_table ADD item char(1) NOT NULL DEFAULT '';

http://dev.mysql.com/doc/refman/5.1/en/alter-table.html http://www.techiecorner.com/560/mysql-how-to-add-column-to-existing-table/

答案 1 :(得分:1)

正如文档中所说,INSERT用于插入数据行,而不是改变模式。

请改为ALTER

表/字段名称用反引号分隔,而不是引号。