Mysql,在表中插入行时出现问题
以前我在表中插入了很多行,但是这个特定的实例一直给我一个错误,我不知道为什么。我重新启动了mysql/尝试禁用外键检查等,但仍然失败 这是我的insert命令:Mysql,在表中插入行时出现问题,mysql,sql,sql-insert,Mysql,Sql,Sql Insert,以前我在表中插入了很多行,但是这个特定的实例一直给我一个错误,我不知道为什么。我重新启动了mysql/尝试禁用外键检查等,但仍然失败 这是我的insert命令: insert into subreddits_subreddit(name, desc, admin_id) values('firstSubreddit', 'This is a test.', 1) 我的错误: ERROR 1064 (42000): You have an error in your SQL syn
insert into subreddits_subreddit(name, desc, admin_id) values('firstSubreddit',
'This is a test.', 1)
我的错误:
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that c
orresponds to your MySQL server version for the right syntax to use near 'desc, admin_id)
values('firstSubreddit', 'This is a test.', 1)' at line 1
下面是subreddits_subreddit的模式
subreddits_subreddit | CREATE TABLE `subreddits_subreddit` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(50) DEFAULT NULL,
`desc` varchar(3000) DEFAULT NULL,
`admin_id` int(11) DEFAULT NULL,
`created_on` datetime DEFAULT NULL,
`updated_on` datetime DEFAULT NULL,
`status` smallint(6) DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `name` (`name`),
KEY `user_id` (`admin_id`),
CONSTRAINT `subreddits_subreddit_ibfk_1` FOREIGN KEY (`admin_id`) REFERENCES
`users_user` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 |
以下是它引用的用户表:
users_user | CREATE TABLE `users_user` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`username` varchar(80) DEFAULT NULL,
`email` varchar(200) DEFAULT NULL,
`password` varchar(200) DEFAULT NULL,
`created_on` datetime DEFAULT NULL,
`status` smallint(6) DEFAULT NULL,
`role` smallint(6) DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `username` (`username`),
UNIQUE KEY `email` (`email`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=latin1 |
users\u user表中有一行id值为1,因此user FK引用应该是ok。subreddits_subreddit表是空的(我刚刚创建)
有什么办法吗?谢谢。
desc
是一个关键字,用于order by等
通过加上反勾魔术引号来转义desc
:
insert into subreddits_subreddit(name, `desc`, admin_id)
values('firstSubreddit', 'This is a test.', 1)
desc
是用于order by和诸如此类的关键字
通过加上反勾魔术引号来转义desc
:
insert into subreddits_subreddit(name, `desc`, admin_id)
values('firstSubreddit', 'This is a test.', 1)
您没有发布错误,但我猜是这样的查看手册,了解“desc
附近使用的正确语法,对吗?如果是这样,那是因为
DESC`是一个保留关键字,需要使用反勾号作为列名。哇,你说得对,这是官方列表。接受下面的任何内容。我不需要它,我们已经有很多这样的错误可以搜索了。你没有发布错误,但我猜是这样的查看手册,了解“desc附近使用的正确语法,对吗?如果是这样,那是因为
DESC`是一个保留关键字,需要使用反勾号作为列名。哇,你说得对,这是官方列表。接受下面的任何内容。我不需要它,我们已经有了一个确切的错误搜索这些数字。