为何CREATE TABLE语句提示‘此位置逗号无效’?title_id处报错排查
解决CREATE TABLE语句中“此位置逗号无效”的错误
问题出在你定义列时只写了列名,没指定数据类型。SQL语法要求创建表时,每个列必须明确声明数据类型,像title_id、publisher_id、author_id、genre_id这些列都只写了名字,数据库无法识别它们的类型,所以在title_id位置报逗号无效的错误。
修正后的SQL语句如下(假设关联表的对应列都是INT类型,你可以根据实际情况调整):
CREATE TABLE books( book_id INT PRIMARY KEY, title_id INT, publisher_id INT, author_id INT, book_type VARCHAR (50), -- aka ebook/hard/paper genre_id INT, FOREIGN KEY(genre_id) REFERENCES genres(genre_id), FOREIGN KEY(author_id) REFERENCES author(author_id), FOREIGN KEY(publisher_id) REFERENCES publishers(publisher_id), FOREIGN KEY(title_id) REFERENCES title(title_id));
注意:补充的数据类型要和关联外键表中对应列的类型保持一致,避免后续关联时出现类型不匹配的问题。
内容的提问来源于stack exchange,提问作者frank m
相关产品推荐
相关产品推荐

