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

时间:2020-03-05 18:53:49  来源:igfitidea点击:

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

因此,我想将发布中指定的固定列添加到我的表中,以便可以知道该行源自哪个数据库。

我该怎么做呢?

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

解决方案

回答

我们可以创建一个视图,该视图添加" constant"列,并将其用作复制源。

回答

我们可以使用计算所得的列在两个数据库上使用以下内容:

ALTER TABLE TableName ADD
    MyColumn AS 'Server1'

然后,只需定义单个"主"数据库即可使用通过计算所得的列值填充的VARCHAR列(或者所需的任何列)。

回答

因此,对我来说,解决方案是设置复制发布以进行转换,并为每个站点创建一个DTS包,该站点将siteid添加到表中以保持id唯一,因为我不能使用guid。