如何在复制数据库时添加常量列?

时间:2008-09-15 16:00:01

标签: sql-server replication

我正在使用SQL Server 2000,我有两个数据库,它们都复制(事务性推送订阅)到一个数据库。我需要知道记录来自哪个数据库。

所以我想在发布中将指定的固定列添加到我的表中,以便我可以告诉该行来自哪个数据库。

我该怎么做?

我想避免更改主数据库,主要是因为有很多表我需要这样做。我希望有一些内置的复制功能,可以在某些地方为我做这件事。除此之外,我会选择观点。

3 个答案:

答案 0 :(得分:1)

您可以使用计算列在两个数据库上使用以下内容:


ALTER TABLE TableName ADD
    MyColumn AS 'Server1'

然后,只需定义单个“主”数据库,即可使用您使用计算列值填充的VARCHAR列(或任何您想要的列)。

答案 1 :(得分:0)

您可以创建一个视图,该视图添加“常量”列,并将其用作复制源。

答案 2 :(得分:0)

因此,我的解决方案是设置复制发布以允许转换并为每个站点创建一个DTS包,将siteid附加到表中以保持ID唯一,因为我无法使用guid。