我试图将一些表从实时数据库移动到另一个数据库,然后在传输数据后将其生效。第二个数据库存在于2008年的服务器上,迁移是从2012年开始的。这导致了一些问题
最初我用Scripts做了一个完整的数据库导出。因为导出工具不会转到以前的版本。 - 完全导出后,我删除了db2上多余的表。因为我只在约200个左右移动40个左右。
现在已经设置了DB结构,一切正常。与过时的数据。一旦数据更新,一切都准备好了。所以我理想地喜欢一个脚本,它检查db2中是否存在db1中的表,然后是否复制所有行。这可能吗?
答案 0 :(得分:2)
如果创建链接服务器不是一个选项,那么您可以尝试使用sql server导入数据向导将数据从一个数据库传输到另一个数据库。 使用以下链接获取操作方法: Import data easily in sql server
答案 1 :(得分:1)
您需要在DB2上创建一个过程,该过程根据您正在检查的表返回结果:
USE [DB2]
CREATE PROCEDURE DBO.CHECKDB2TABLE
@TABLENAME NVARCHAR(50)
AS
IF EXISTS (
SELECT * FROM INFORMATION_SCHEMA.COLUMNS
WHERE (TABLE_NAME = @TABLENAME)
)
BEGIN
SELECT 'TRUE'
ELSE
SELECT 'FALSE'
END
然后使用该过程检查DB2并根据要在表中复制的输出创建条件语句。
EXEC DB2.dbo.CheckDB2Table @TABLENAME='Tablename'
感谢。