温馨提示×

怎么在SQLite中使用外键约束

小亿
188
2024-03-11 20:24:26
栏目: 云计算

在SQLite中使用外键约束需要在创建表的时候定义外键关系。以下是一个示例:

首先,创建两个表,并定义一个外键约束将一个表的列作为另一个表的外键:

CREATE TABLE table1 (
    id INTEGER PRIMARY KEY,
    name TEXT
);

CREATE TABLE table2 (
    id INTEGER PRIMARY KEY,
    table1_id INTEGER,
    FOREIGN KEY (table1_id) REFERENCES table1(id)
);

在上面的示例中,table2表中的table1_id列是table1表的外键,它引用table1表中的id列。

然后,插入数据时,需要确保外键约束不会被破坏:

INSERT INTO table1 (id, name) VALUES (1, 'John');
INSERT INTO table2 (id, table1_id) VALUES (1, 1); // 这里的1是table1表中的id

如果尝试插入一个不存在的外键值,将会收到错误消息:

INSERT INTO table2 (id, table1_id) VALUES (2, 2); // 尝试插入一个不存在的外键值
-- Error: foreign key mismatch - "table2" referencing "table1"

这样,您就可以在SQLite中使用外键约束。

0