Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Tsql 在SQLServer2005中验证数据迁移_Tsql - Fatal编程技术网

Tsql 在SQLServer2005中验证数据迁移

Tsql 在SQLServer2005中验证数据迁移,tsql,Tsql,我正在将数据从非unicode数据库表迁移到unicode数据库表。 我们有大约40个表,需要对迁移的数据至少进行行数验证 重复编写相同的代码来验证所有表似乎是一种错误的方法 那么,验证数据迁移的正确方法是什么呢 我正在使用T-SQL并寻找一些代码示例来执行行计数检查。此查询将比较两个数据库中的表,并返回其中一个数据库中行数不同或缺少表的表。用系统中的数据库名称替换AAA和BBB SELECT DbB.Name DbBName, DbA.Rows DbARows, DbB.Rows D

我正在将数据从非unicode数据库表迁移到unicode数据库表。 我们有大约40个表,需要对迁移的数据至少进行行数验证

重复编写相同的代码来验证所有表似乎是一种错误的方法

那么,验证数据迁移的正确方法是什么呢


我正在使用T-SQL并寻找一些代码示例来执行行计数检查。

此查询将比较两个数据库中的表,并返回其中一个数据库中行数不同或缺少表的表。用系统中的数据库名称替换AAA和BBB

SELECT 
    DbB.Name DbBName, DbA.Rows DbARows, DbB.Rows DbBRows
FROM
    (
    SELECT DISTINCT p.rows Rows, tbl.name Name
    FROM  AAA.sys.tables AS tbl INNER JOIN AAA.sys.partitions AS p ON p.object_id = tbl.object_id
    ) DbA
    FULL OUTER JOIN 
    (
    SELECT DISTINCT p.rows Rows, tbl.name Name
    FROM  BBB.sys.tables AS tbl INNER JOIN BBB.sys.partitions AS p ON p.object_id = tbl.object_id
    ) DbB ON DbA.Name = DbB.Name
WHERE
    DbA.Rows <> DbB.Rows OR DbA.Rows IS NULL OR DbB.Rows IS NULL
如果数据库位于不同的服务器上,请创建链接服务器并使用完全限定的表名