您的位置:首页 > 数据库

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

2014-08-01 13:42 288 查看
作者:曲军昌

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
插入一条数据进行测试。可能会遇到以下问题(如果没有发生一些问题最好,如果发生了解决方案如下)

错误信息如下:



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



启动这个服务即可。

如果出现以下错误:



解决方案如下:

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



做完以下步骤,基本能完全成功。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: