mysql怎么设置级联删除
发布网友
发布时间:2022-05-02 02:50
我来回答
共3个回答
懂视网
时间:2022-05-02 07:12
1,创建user表
属性:id,name
2,创建userInfo表
属性:id,age
在userInfo表中创建外键id,如下图:
在user表中插入两个用户信息
(1,‘1‘),(2,‘2‘)
在userInfo表中插入两个用户信息
(1,1),(2,2)
则如果删除user表中的(1,‘1‘)则会级联删除userInfo中的(1,1)
同时说一下:级联更新时有 一下四个选项
mysql内部级联删除
标签:外键 png 插入 mysql 级联 user 用户 选项 bsp
热心网友
时间:2022-05-02 04:20
这个在建表的时候就可以指定了
CREATE TABLE buildings (
building_no INT PRIMARY KEY AUTO_INCREMENT,
building_name VARCHAR(255) NOT NULL,
address VARCHAR(255) NOT NULL
);
CREATE TABLE rooms (
room_no INT PRIMARY KEY AUTO_INCREMENT,
room_name VARCHAR(255) NOT NULL,
building_no INT NOT NULL,
FOREIGN KEY (building_no)
REFERENCES buildings (building_no)
ON DELETE CASCADE
);
当执行
DELETE FROM buildings
WHERE
building_no = 2;的时候,rooms表中的building_no =2的记录都会被删掉。
热心网友
时间:2022-05-02 05:38
通过触发器来级联删除:
具体的触发器代码如下:
Create TRIGGER [dbo].[DeleteRelatedProcts] ON [dbo].[ProctCategory]
AFTER DELETE
AS
BEGIN
SET NOCOUNT ON;
delete from [dbo].[proct] where categoryId in
(
select id from deleted
)
END