国产探花免费观看_亚洲丰满少妇自慰呻吟_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';

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 长兴县| 华容县| 齐齐哈尔市| 滨州市| 平顺县| 横峰县| 南宫市| 华亭县| 武威市| 双流县| 三门县| 普定县| 名山县| 瑞丽市| 游戏| 淮安市| 青田县| 萝北县| 泽库县| 临高县| 福建省| 冷水江市| 麻江县| 乐山市| 德兴市| 潮安县| 库伦旗| 防城港市| 喀喇沁旗| 远安县| 怀远县| 丰顺县| 夹江县| 瑞安市| 西吉县| 沙坪坝区| 龙岩市| 台南县| 宜都市| 雅安市| 洪江市|