使用DBSchema工具时外键引用报错:id附近存在语法错误
SQL语法错误排查:syntax error at or near "id"
你的CREATE TABLE语句报错是因为外键约束的语法不符合标准SQL规范,具体问题出在最后一行的外键定义上。
错误原因:
- 外键列的声明缺少括号:标准SQL中,FOREIGN KEY后面必须把要作为外键的列用括号括起来
user是多数数据库的保留关键字,直接引用会引发语法冲突
修正后的SQL代码:
CREATE TABLE user_info ( id UUID PRIMARY KEY, full_name VARCHAR NOT NULL, birthday VARCHAR NOT NULL, sex VARCHAR NOT NULL, profile_image VARCHAR, verified SMALLINT DEFAULT 0, legend VARCHAR NULL, FOREIGN KEY (id) REFERENCES "user"(id) )
关键修改点:
- 将
FOREIGN KEY id改为FOREIGN KEY (id),用括号包裹外键列名 - 将
REFERENCES user(id)改为REFERENCES "user"(id),用双引号包裹关键字表名(如果是MySQL数据库,替换成反引号user即可)
内容的提问来源于stack exchange,提问作者stackcall01
相关产品推荐
相关产品推荐

