在同一个表SQLite上创建外键

前端之家收集整理的这篇文章主要介绍了在同一个表SQLite上创建外键前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
最近我开始使用sqlite(根据我的研究需要),我遇到了sqlite的几个限制,我想知道:sqlite不能在同一个表上创建外键吗?例如.这是我的代码

CREATE TABLE Categories
(
    name varchar(20),parent_category varchar(20) NULL,PRIMARY KEY(name),FOREIGN KEY parent_category_fk(parent_category) REFERENCES Categories(name)
)

但是当我尝试在sqliteStudio中执行sql时,它给了我一个外键错误.

有谁知道为什么这不起作用?

解决方法

问题是您的FK子句的语法错误.它应该是:

FOREIGN KEY (parent_category) REFERENCES Categories(name)

如果要命名FK约束,可以使用CONSTRAINT关键字的前缀来执行此操作,如下所示:

CONSTRAINT parent_category_fk FOREIGN KEY (parent_category) REFERENCES Categories(name)

猜你在找的Sqlite相关文章