當前位置:首頁 » 編程語言 » sql級聯更新

sql級聯更新

發布時間: 2022-04-02 00:55:32

sql中如何設置級聯更新

兩種方法:

1.把兩個表需要關聯的欄位,設置主外鍵關聯,然後設置它們級聯更新和刪除就行了

2.呢,就是給一個表建立觸發器,當插入或更新的時候,自動更新另一個表。

試試吧!

② 對Sql Server中的表添加級聯更新和級聯刪除的幾種方法

觸發器方式: create trigger trg_A on A for update,delete as begin if exists(select 1 from inserted) update B set Name=(select Name from inserted) where Name=(select Name from deleted) else delete B where Name=(select Name from deleted) end go 要使用級聯性更新和刪除,用戶可以在Alter TABLE 語句的CONSTRAINT子句中使用ON Update CASCADE 和/或 ON Delete CASCADE 關鍵字。注意他們都必須是應用於外鍵的。 級聯更新和級聯刪除方式: Alter TABLE [dbo].[T_USERGROUP] ADD CONSTRAINT [FK_T_USERGROUP_T_ACCTTEMPLATE] FOREIGN KEY ( [ATNAME] ) REFERENCES [dbo].[T_ACCTTEMPLATE] ( [ATNAME] ) ON Update CASCADE ON Delete CASCADE

③ SQL資料庫怎麼進行多表級聯更新,求個存儲過程

createprocaa
@IDint
as
begin
update表1setflag=1where表1ID=@ID

update表2setflag=1from表1a,表2bwherea.表1ID.=b.表1IDanda.表1ID=@ID

update表3setflag=1from表1a,表3cwherea表1ID.=c.表1IDanda.表1ID=@ID

update表4setflag=1from表1a,表3b,表4cwherea表1ID.=b.表1IDandc.表3ID=b.表3IDanda.表1ID=@ID

update表5setflag=1from表1a,表3b,表5cwherea表1ID.=b.表1IDandc.表3ID=b.表3IDanda.表1ID=@ID

update表6setflag=1from表1a,表3b,表6cwherea表1ID.=b.表1IDandc.表3ID=b.表3IDanda.表1ID=@ID
end
---執行---
--execaa1

④ SQL server中怎麼修改級聯刪除修改

在創建表的時候就需要設置級聯刪除和級聯更新(修改)。方法如下:

altertableSZ_Picture
addconstraintFK_SZ_PICTU_RELATIONS_SZ_PICTUforeignkey(pictureTypeId)
referencesSZ_PictureType(pictureTypeId)
--其中這句就是級聯更新和級聯刪除

級聯刪除:

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

級聯更新:

更新主鍵值的操作,該值由其它表的現有行中的外鍵列引用。在級聯更新中,更新所有外鍵值以與新的主鍵值相匹配。

⑤ sql中如何設置級聯刪除/更新

在表編輯器裡面。

貌似SQL2000隻支持表間的級聯刪除。表內連接沒辦法級聯刪除。

⑥ sql 級聯更新有什麼好處

練級更新是說明你用外鍵了,用外鍵就省內存空間,練級更新等你開始使用數據時候,修改的時候,語句比較簡單,只要改一個就行

⑦ sql級聯更新和級聯刪除不起作用

sql級聯更新和級聯刪除不起作用
級聯刪除你可以把它認為是一個觸發器,也就是你刪除主表中的數據,那麼從表中的相關聯的也就一起刪除了。。。看個例子:======================create table a
(
id varchar(20) primary key,
password varchar(20) not null
)

create table b
(
id int identity(1,1) primary key,
name varchar(50) not null,
userId varchar(20),
foreign key (userId) references a(id) on delete cascade
)
表B創建了外碼userId 對應A的主碼ID,聲明了級聯刪除
測試數據:
insert a values ('11','aaa')
insert a values('23','aaa')
insert b values('da','11')
insert b values('das','11')
insert b values('ww','23')
刪除A表內id為『11』的數據,發現B表內userId 為「11」也被資料庫自動刪除了,這就是級聯刪除

⑧ sql如何通過外鍵約束實現級聯刪除和更新

設定外鍵為級聯刪除就可以了。
alter table B add constraint fk_ID foreign key (ID) references A(ID) on delete cascade;
這樣只需:delete from A where ID=nnnn; 就可以自動刪除對應B表內容了。

通過外鍵無法實現同步更新。

⑨ sql server 級聯更新 急急急!

有兩種做法,第一種方法比較簡單,直接通過設計器就能實現;是這樣的:你打開員工表的設計器,右擊關系將彈出你創建的主外鍵關系,在該關系中你將Insert和Upadate規則中的更新規則後面的下拉表中選擇「層疊」,如果你想對刪除規則也這樣規定也可以選擇「層疊」,然後你就可以在修改主表列時,外鍵表也跟著變化了。(不知道你用的是SQL 2000還是2005,具體步驟可能不太一樣,不過思路是相同的)
第二種做法就是寫sql語句:
alter table 銷售單
Add constraint fk_ygid_xsygid --約束名
Foreign key(員工id) references 員工(id)
on update cascade --級聯更新
on delete cascade --級聯刪除

恩,兩種方法的效果是一樣的。你自己選擇!

⑩ sql中級聯刪除,級聯更新是怎麼理解的

級聯刪除你可以把它認為是一個觸發器,也就是你刪除主表中的數據,那麼從表中的相關聯的也就一起刪除了。。。看個例子:======================create table a
(
id varchar(20) primary key,
password varchar(20) not null
)

create table b
(
id int identity(1,1) primary key,
name varchar(50) not null,
userId varchar(20),
foreign key (userId) references a(id) on delete cascade
)
表B創建了外碼userId 對應A的主碼ID,聲明了級聯刪除
測試數據:
insert a values ('11','aaa')
insert a values('23','aaa')
insert b values('da','11')
insert b values('das','11')
insert b values('ww','23')
刪除A表內id為『11』的數據,發現B表內userId 為「11」也被資料庫自動刪除了,這就是級聯刪除
delete a where id='11'=============================================================級聯更新也大同小異。。只是關鍵字為:on update希望回答對你有所幫助........

熱點內容
java求絕對值 發布:2025-07-10 14:10:55 瀏覽:651
usb調試開關在哪裡安卓 發布:2025-07-10 13:59:55 瀏覽:76
資料庫維度 發布:2025-07-10 13:54:31 瀏覽:798
c語言位域的賦值 發布:2025-07-10 13:54:30 瀏覽:582
查成績密碼忘了怎麼辦 發布:2025-07-10 13:52:21 瀏覽:818
java死 發布:2025-07-10 13:51:30 瀏覽:995
車輛設施配置有哪些 發布:2025-07-10 13:42:28 瀏覽:819
java的成員 發布:2025-07-10 13:38:59 瀏覽:719
荒島餘生ftp 發布:2025-07-10 13:36:46 瀏覽:921
賽車配置有哪些車型 發布:2025-07-10 13:35:15 瀏覽:512