创建表时添加外键约束:CONSTRAINT [外键约束的名称] FOREIGN KEY (外键字段) REFERENCES [主表名称(主键字段)] 添加外键约束:ALTER TABLE [表名] ADD CONSTRAINT [外键约束的名称] FOREIGN KEY [外键字段] REFERENCES [主表名称(主键字段)] #创建一个关联到主表的从表CREATETABLEemp_part(emp_idINTPRIMARYKEYAUT...
ADD CONSTRAINT fk_dept_id FOREIGN KEY (dept_id) REFERENCES departments ON DELETE CASCADE; ``` 这样一来,当你删除departments表中的记录时,employees表中对应的所有记录也会被自动删除。 性能考量:虽然外键能保证数据一致性,但是过多的外键约束会影响数据库的写入性能。所以在设计数据库结构时要平衡数据完整性和...
```sql ALTER TABLE 表名 ADD CONSTRAINT 外键名称 FOREIGN KEY (外键字段) REFERENCES 主表(主表字段) ON UPDATE CASCADE ON DELETE CASCADE; ```例如,要在`emp`表中创建一个名为`emp_fk`的外键,指向`dept`表中的`dept_id`字段,可以使用以下命令:```sql...
ON DELETE 子句可以有以下几种选项: CASCADE: 当主键表中的记录被删除时,外键表中的相应记录也会被自动删除。 CREATE TABLE Orders ( OrderID INT PRIMARY KEY, CustomerID INT, FOREIGN KEY (CustomerID) REFERENCES Customers(CustomerID) ON DELETE CASCADE ); 复制代码 SET NULL: 当主键表中的记录被删除时,...
方法一:ORM 层的 cascade 实现 个人笔记,不保证正确。 一、关系构建:ForeignKey与relationship 关系构建的重点,在于搞清楚这两个函数的用法。ForeignKey的用法已经在SQL表达式语言 - 表定义中的约束讲过了。主要是ondelete和onupdate两个参数的用法。 二、relationship ...
外键约束(FOREIGN KEY,缩写 FK)是用来实现数据库表的参照完整性的。它是指表中某个字段的值依赖于另一张表中某个字段的值,而被依赖的字段必须且有主键约束或者唯一约束。被依赖的表通常称之为父表或者主表,设置外键约束的表称为子表或从表。相关概念 主键:可以唯一标识一条记录的列外键:从表中与主表的...
id int primary key auto_increment, title varchar(32), price float(6,2) ); create table book2author( id int primary key auto_increment, author_id int, book_id int, foreign key(author_id) references author(id) on update cascade # 级联更新 ...
ON DELETE CASCADE选项 在SQL中,ON DELETE CASCADE是一种约束,用于在对主表进行删除操作时,自动删除与之关联的从表中的相应行。它可以确保数据间的一致性,使得删除主表记录时,相关的从表记录也被删除。 例如,考虑一个订单(Orders)和订单详情(OrderDetails)两个表。订单详情表中的每一行都与订单表中的某一行相...
FOREIGN KEY(`parent_id`) REFERENCES `parents`(`id`) ON DELETE CASCADE ); INSERT INTO `childs` VALUES (1,1,'I''m the child'); Only the parent was deleted, child does still exist (with invalid parent id) When executing the same SQL statements with sqllitebrowser the result is as exp...