当记录插入另一个SQL Server数据库时,如何将记录插入一个服务器数据库

时间:2014-11-28 08:04:53

标签: sql sql-server

我正在网上和商店订购比萨饼项目。在这个项目中,我有两个不同的数据库,一个是在线订购记录将插入的服务器,另一个是仅在商店中运行的另一个服务器数据库。

我的要求是,无论何时在服务器数据库中放置任何订单,都必须在不使用触发器的情况下自动将相同的订单插入另一个服务器数据库。

有没有解决方案请告诉我?

Bhavana Ky

3 个答案:

答案 0 :(得分:2)

作为在其他地方建议使用链接服务器的替代方法,根据您的复制要求,还有其他各种选项:

  • 日志传送允许您定期将事务日志从主服务器发送到一个或多个辅助服务器。 More info
  • 数据库镜像通常用于提高SQL Server数据库的可用性,自动故障转移等。More info
  • 复制,更改跟踪,更改数据捕获是AlwaysOn可用性组(仅限SQL Server 2012或更高版本)中的功能,可轻松实现复制自动化。 More info

这些替代方法可帮助您在数据库级别而不是在应用程序级别复制数据(在使用链接服务器复制数据时,您将需要自定义代码,触发器等)。

答案 1 :(得分:0)

我过去做过这个并取得了不错的成绩:

使用SQL链接服务器功能链接服务器。 (How to create the linked server for SQL Server 2008 where we have the database from 2000 and 2005

然后创建一些从源复制新行的作业到目标表。

当你再次运行这个作业时,你需要某种增量字段(通常是一个bigint)来了解你上次同步的行是什么。

答案 2 :(得分:0)

其他答案似乎都没有提到这一点,但您需要的一个关键部分是 触发器

触发器允许您在原始表上满足条件时更新/插入多个表,在这种情况下条件为 插入

将这个 链接服务器 结合起来,它应该是相当直接的,以实现您的需求。

Triggers

Linked Servers