SQLite外键

编辑时间: 2018-02-07 13:00:09    关键字:

 SQLite Foreign Key语句用于指定一个表中的值也出现在另一个表中。 它在SQLite数据库中执行强制引用完整性。 被引用的表称为父表,而具有外键(或引用父表)的表称为子表。 子表中的外键通常会引用父表中的主键。

在SQLite中,只能在CREATE TABLE语句中定义外键。

创建外键

语法

CREATE TABLE table_name   (       column1 datatype [ NULL | NOT NULL ],       column2 datatype [ NULL | NOT NULL ],       ...       CONSTRAINT fk_column       FOREIGN KEY (column1, column2, ... column_n)       REFERENCES parent_table (column1, column2, ... column_n)   ); 
SQL

示例:

创建一个以department表作为引用表(父表)拥有外键的 employees 表, employees 表的department_id列引用父表departmentdepartment_id列作为外键。

-- 父表 CREATE TABLE departments   (     department_id INTEGER PRIMARY KEY AUTOINCREMENT,       department_name VARCHAR   );    -- 拥有外键的表 CREATE TABLE employees   (     employee_id INTEGER PRIMARY KEY AUTOINCREMENT,       last_name VARCHAR NOT NULL,       first_name VARCHAR,       department_id INTEGER,       CONSTRAINT fk_departments       FOREIGN KEY (department_id)       REFERENCES departments(department_id)   ); 
SQL

这里在department表中创建一个主键department_id。 然后,在employees表上创建一个名为fk_departments的外键,该department_id字段引用department表的department_id字段。

推荐热图

合作推荐

2010-2018 可思数据版权所有 About SYKV | ICP备案:京ICP备14056871号