2011-04-08 77 views
0

好吧,插入查询在mysql与auto_increment字段

我相信我在这里做错了什么,但我不能为我的生活弄明白。

这里是我的表

CREATE TABLE `email_queue` (
    `id` int(11) NOT NULL AUTO_INCREMENT, 
    `from` varchar(256) DEFAULT NULL, 
    `to` varchar(4182) DEFAULT NULL, 
    `cc` varchar(4182) DEFAULT NULL, 
    `subject` varchar(4182) DEFAULT NULL, 
    `body` varchar(4182) DEFAULT NULL, 
    `status` varchar(64) DEFAULT NULL, 
    `attempts` int(11) DEFAULT NULL, 
    PRIMARY KEY (`id`), 
    UNIQUE KEY `id_UNIQUE` (`id`) 
) 

当我做了

insert into email_queue values (1,'','','','','','',0); 

它工作正常,并插入空白值

但是当我尝试使用插入部分值

insert into email_queue(to) values('sample_to_name'); 

它出错的错误 错误1064(42000):您的SQL语法错误;检查手册中 对应于你的MySQL服务器版本在1号线

我在做什么错用接近“来)诉 alues(” sample_to_name“)”正确的语法?

回答

2

to是mysql reserved单词应该反引号。

要么避免与保留字的创建列名或用反引号``

insert into email_queue(`to`) values('sample_to_name'); 
+0

这是为我做的。谢谢! 2011-04-08 06:22:35

1

你需要附上他们周围背蜱

insert into email_queue(`to`) values('sample_to_name'); 
+0

感谢您的答案。为我做了! :) – 2011-04-08 06:27:00

1

问题是因为

to is mysql reserved word 
+0

感谢您的答案。为我做了! :) – 2011-04-08 06:23:20