国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

sql delete同時刪除多表相關聯記錄

2024-07-24 12:39:24
字體:
來源:轉載
供稿:網友

sql delete同時刪除多表相關聯記錄,sqlserver 支持級聯更新和刪除,oracle 只支持級聯刪除.

刪除包含主鍵值的行的操作,該值由其它表的現有行中的外鍵列引用,在級聯刪除中,還刪除其外鍵值引用刪除的主鍵值的所有行,如:

  1. create database temp 
  2. go 
  3. use temp 
  4. go 
  5.  
  6. create table UserInfo 
  7. UserId int identity(1,1) primary key , 
  8. UserName varchar(20),  --用戶名 
  9. password varchar(20) not null --密碼 
  10.  
  11. create table UserDetails 
  12. id int identity(1,1) primary key
  13. name varchar(50) not null--真實姓名 
  14. userId int
  15. foreign key (userId) references UserInfo(UserId) on delete cascade 
  16.  
  17. insert UserInfo values ('ly','jeff'
  18. insert UserInfo values('wzq','wzqwzq'
  19. insert UserInfo values('lg','lglg'
  20.  
  21. insert UserDetails values('李四',1) 
  22. insert UserDetails values('王五',2) 
  23. insert UserDetails values('劉六',3) 
  24. --Vevb.com 
  25. alter table 表名 
  26. add constraint 外鍵名 
  27. foreign key(字段名) references 主表名(字段名) 
  28. on delete cascade 

語法:

  1. Foreign Key 
  2. (column[,...n]) 
  3. references referenced_table_name[(ref_column[,...n])] 
  4. [on delete cascade
  5. [on update cascade

注釋:

column:列名

referenced_table_name:外鍵參考的主鍵表名稱

ref_name:外鍵要參考的表的主鍵列

on delete:刪除級聯

on update:更新級聯

000,請您對文章做出評價)此時:Delete From UserInfo Where UserId = 1 就可刪除UserInfo表和UserDetails表的UserId=1 的內容

看一下MySql數據庫教程怎么操作多表刪除呢,有時我們可以直接用delete 來刪除.

delete 語法:

  1. DELETE [LOW_PRIORITY] [QUICK] FROM table_name 
  2.        [WHERE where_definition] 
  3.        [ORDER BY ...] 
  4.        [LIMIT rows
  5.  
  6. or 
  7.  
  8. DELETE [LOW_PRIORITY] [QUICK] table_name[.*] [, table_name[.*] ...] 
  9.        FROM table-references 
  10.        [WHERE where_definition] 
  11.       --Vevb.com 
  12. or 
  13.  
  14. DELETE [LOW_PRIORITY] [QUICK] 
  15.        FROM table_name[.*] [, table_name[.*] ...] 
  16.        USING table-references 
  17.        [WHERE where_definition] 

示例代碼為:

1.刪除一個表中的數據

delete from department where name='Asset Management';

2.刪除兩個表中的數據

  1. delete employee, employeeSkills 
  2. from employee, employeeSkills, department 
  3. where employee.employeeID = employeeSkills.employeeID 
  4. and employee.departmentID = department.departmentID 
  5. and department.name='Finance'

3.刪除兩個表中的數據,用using語法

  1. delete from employee, employeeSkills 
  2. using employee, employeeSkills, department 
  3. where employee.employeeID = employeeSkills.employeeID 
  4. and employee.departmentID = department.departmentID 
  5. and department.name='Finance';

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 浦北县| 定日县| 临西县| 宝鸡市| 东山县| 三台县| 包头市| 秀山| 海口市| 嘉定区| 陆河县| 息烽县| 闵行区| 泰州市| 常熟市| 应用必备| 石林| 沁阳市| 闸北区| 弥勒县| 澄江县| 涪陵区| 兴国县| 呼玛县| 榕江县| 南漳县| 富源县| 来宾市| 泸定县| 曲靖市| 成武县| 延吉市| 台中市| 英德市| 沾益县| 永修县| 沽源县| 察雅县| 简阳市| 渝北区| 玉环县|