在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`)
)
当我执行 a 时,
insert into email_queue values (1,'','','','','','',0);
它工作正常并插入空白值,
但是当我尝试使用
insert into email_queue(to) values('sample_to_name');
它插入部分值时,会出现错误 ERROR 1064 (42000):您的 SQL 语法有错误;检查手册 对应于您的 MySQL 服务器版本,以便在 'to) v 附近使用正确的语法 第 1 行的 alues('sample_to_name')'
我做错了什么?
Ok,
I am sure I am doing something wrong here but I can't for the life of me figure it out.
Here is my table
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`)
)
When I do a
insert into email_queue values (1,'','','','','','',0);
it works fine and inserts the blank values
but when I try to insert partial values using
insert into email_queue(to) values('sample_to_name');
it errors out saying
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use near 'to) v
alues('sample_to_name')' at line 1
What am I doing wrong?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
to
是 mysql 保留单词应该用反引号。要么避免使用保留字创建列名,要么用反引号``将它们括起来
to
is mysql reserved word should be in backticks.Either avoid the creating column names with Reserved words or enclose them with backtick ``
你需要反引号来
You need back-ticks around to
问题是因为
problem is because