我正在尝试创建一个我从sqlite3迁移的表,但我一直收到此错误
MariaDB [imperial]> CREATE TABLE Show(
-> `id` int(10),
-> `name` varchar(255),
-> `poster_link` varchar(255),
-> `descriptions` varchar(255),
-> `genre_tags` varchar(255),
-> `imdb_link` varchar(255),
-> PRIMARY KEY(id)
-> );
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'Show(
`id` int(10),
`name` varchar(255),
`poster_link` varchar(255),
`descri' at line 1
任何想法? 继承人我的全部问题
CREATE TABLE Show(
`id` int(10),
`name` varchar(255),
`poster_link` varchar(255),
`descriptions` varchar(255),
`genre_tags` varchar(255),
`imdb_link` varchar(255),
PRIMARY KEY(id)
);
是的,我检查了保留字。
答案 0 :(得分:1)
用``包装表的名称,因为这是一个关键字:
CREATE TABLE `Show`(
`id` int(10),
`name` varchar(255),
`poster_link` varchar(255),
`descriptions` varchar(255),
`genre_tags` varchar(255),
`imdb_link` varchar(255),
PRIMARY KEY(id)
);
但正如@hcheung所说,最好避免使用关键字作为对象名称。