需求是:sql中更新一個資料庫表中的某個資料時,同時根據這個資料取更新鏈接服務器中一個資料庫的某個表中的某個欄位值
嘗試寫過觸發器,但如果要更新鏈接服務器中資料庫的表,需要用到分布式事務,需要開放135埠,但135埠開放的話不安全,一般服務器是禁用的,請問還有什么寫法嗎?
可以再觸發器中呼叫存盤程序嗎?
測驗資料如下:
第一個資料庫:
create table A
(
id int,
name varchar(500),
remark varchar(500)
)
insert into A values
(1,'zhangsan','數學'),
(2,'lisi','英語'),
(3,'wangwu','語文')
鏈接服務器資料庫:
create table B
(
id int,
name varchar(500),
remark varchar(500)
)
insert into B values
(1,'zhangsan','英語'),
(3,'wangwu','體育')

修改A中的remark欄位,根據A.id=[LINK2.25].test.dbo.B.id修改B的remark欄位,改成與A相同
請教各位大神,怎么寫呢
uj5u.com熱心網友回復:
觸發器實作, 在觸發器中關聯更新.至于安全問題, 可以設定兩邊服務器的Windows防火墻規則: 訪問135埠的允許遠程機器只限對方的IP.
uj5u.com熱心網友回復:
有鏈接服務器地址,直接實作Update_Trigger就可以,不需要開放發布式事務。uj5u.com熱心網友回復:
觸發器中更新遠程表,風險比較大。不推薦。最好程式來完成。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/281908.html
標籤:基礎類