【问题标题】:How to update row in SQL server using linked MySql server如何使用链接的 MySql 服务器更新 SQL 服务器中的行
【发布时间】:2013-08-09 21:59:33
【问题描述】:

我在sql server and mysql 之间创建了链接服务器。它对我来说可以正常工作。 我的问题是,当我想在 mysql 表中插入行时,我想更新 sql server 表中的行,

就像在mysql表名'abc'中,当在这个表中插入新行时,在ms sql server中表名是xyz,在这个字段名中status默认为true,当在@987654324中插入新行时@table那个时间在xyztable字段名status会自动更新,status会变成false。

我的链接服务器名称是MYLINK,它对我来说可以正常工作,我想在 sql server 中使用create trigger which update row,以及如何在 ms sql server 中为更新行创建触发器。

【问题讨论】:

  • 这个问题可能很有趣,但我认为如果你想要准确的答案,你必须编辑它以使事情更加更清楚。

标签: mysql sql sql-server triggers linked-server


【解决方案1】:
ALTER TRIGGER [TriggerLocalServerTable]
   ON  dbo.[LocalServerTable]
    FOR INSERT
AS 

DECLARE @A varchar(4)
DECLARE @B varchar(4)
DECLARE @id int

BEGIN
 SELECT
 @A = A,
 @B = B,
 @id = id
 FROM inserted

 UPDATE  [LinkedServer].[Database].[dbo].[Table]
 SET A = @A, B = @B
 WHERE id = @id      
END

【讨论】:

    【解决方案2】:

    mysql 不能触发除 mssql 之外的任何东西。 但是你可以使用 SQL Agent 来调度一个任务,在 sql server 上执行以从链接的 mysql 中选择数据

    【讨论】:

      猜你喜欢
      • 2012-07-21
      • 1970-01-01
      • 1970-01-01
      • 2015-12-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多