不同服务器之间的数据库创建触发器会遇到的一些问题

作者:曲军昌

A服务器上表中的数据发生变化更新B服务器中的表的数据。

第一步:创建link server。




以上步骤做完之后点击OK即可。这样LINK SERVER就创建成功了。

第二步:在A服务器上创建测试数据表(假设A,B服务器上的数据库名称为:TEST)。

A服务器上的表:

IF OBJECT_ID('Trigger_table_A','u')IS NOT NULL
DROP PROC Trigger_table_A
GO
CREATE TABLE Trigger_table_A
(
	NAME VARCHAR(50),
	AGE INT	
)
GO
B服务器上的表:

IF OBJECT_ID('Trigger_table_B','u')IS NOT NULL
DROP PROC Trigger_table_B
GO
CREATE TABLE Trigger_table_B
(
	NAME VARCHAR(50),
	AGE INT	
)
GO

在A服务器上创建触发器:(简单创建一个插入的触发器)

IF OBJECT_ID('test_Trigger_table_A','tr')IS NOT NULL
DROP PROC test_Trigger_table_A
GO
CREATE TRIGGER test_Trigger_table_A
   ON  Trigger_table_A
   FOR INSERT
AS 
BEGIN
 insert into TEST.test.dbo.Trigger_table_B 
 select * from Inserted 
END
GO
以上语法环境基本搭建好了。

以下就进行测试:

insert into Trigger_table_A
select 'tom',36
插入一条数据进行测试。可能会遇到以下问题(如果没有发生一些问题最好,如果发生了解决方案如下)

错误信息如下:


发生这个错误,解决方案:


启动这个服务即可。

如果出现以下错误:


解决方案如下:

控制面板→管理工具→组件服务下的

做完以下步骤,基本能完全成功。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值