我有一个SQLITE3的问题。SQLite3不支持外键约束吗?
我曾尝试使用以下SQL脚本创建2个表persons
和orders
:
sqlite> create table Persons(
P_Id int primary key,
LastName varchar,
FirstName varchar,
Address varchar,
City varchar
);
sqlite> create table Orders(
O_Id int NOT NULL,
OrderNo int NOT NULL,
P_Id int,
PRIMARY KEY (O_Id),
FOREIGN KEY (P_Id) REFERENCES Persons(P_Id)
);
sqlite> insert into Orders values(1,77895,3);
sqlite> select * from Orders;
1|77895|3
sqlite>
即使个人表是空行可以插入到表orders
。
它不显示任何错误。
这怎么可能。
每次?永久启用它是不可能的? – mafu 2014-03-09 09:27:11
@mafu是的,每一次。我编辑了答案来解释原因。 – kijin 2014-03-10 08:54:36
今天刚刚遇到了这个。这是最笨的东西。 – 2014-03-24 03:56:49