我在sqlite3的做了一个数据库,并在贷款表student表和书籍表中设置外键停止重复贷款:使用创建表sqlite3的外键
:
CREATE TABLE loan(
SudentID INTEGER,
ISBN INTEGER,
out INTEGER,
FOREIGN KEY(SudentID)
REFERENCES student(SudentID)
ON DELETE CASCADE
FOREIGN KEY(ISBN)
REFERENCES book(ISBN)
ON DELETE CASCADE
)
CREATE TABLE student(
SudentID INTEGER PRIMARY KEY,
First TEXT,
Last,
Contact Text,
Year INTEGER)
CREATE TABLE book(
ISBN INTEGER PRIMARY KEY,
Title TEXT,
Price INTEGER,
Qty INTEGER,
Subject TEXT)
如果我尝试插入重复记录到贷款表外键不会防止它。
Pragma在代码和Firefox数据库设置中均已打开。
的版本是2.6.0
我的工作就是使用鲜明的过滤掉重复的,但有什么办法,我可以激活它们,因为我使用这个数据库作为教学工具。但是cascade delete
不起作用!为什么?
这是我通常会做的,但无法在任何书中找到sql命令! – 2013-02-24 16:51:12
我可以在Sqlite3的2.6.0版本中完美地验证它,因为它已经过实际测试。 – 2013-02-25 02:48:20