SQL Server将(dev)表列内容与(prod)表列内容进行比较

时间:2019-01-10 19:39:35

标签: sql sql-server stored-procedures comparison

我需要比较不同环境dev&prod中同一表的内容。开发表列之一需要与生产表匹配。

从生产环境执行查询。

我到目前为止所拥有的查询,一个使用OPENQUERY从开发数据库服务器中检索数据,另一个是从生产中获取数据的查询,这些未联接,这是两个单独的查询

理想情况下,我想将其作为存储过程运行,并查看3列:dev_value,prod_value,以及第三列,该列显示哪些行不同,或者在开发中发现了哪些行,而在生产中却没有。

最有可能我最终将不得不清理那些可能在开发过程中某个时间添加但从未完成的值。

我的查询:

SELECT VALUE
FROM Prod.dbo.DOMAIN
WHERE DOMAIN_VALUE = 'AdminHold'

SELECT VALUE
FROM OPENQUERY(
    [Dev],
    'SELECT * FROM [Dev].[dbo].[DOMAIN] WHERE DOMAIN_VALUE = ''AdminHold'''
)

有关如何实现此目标的任何帮助或建议/示例都很好。

1 个答案:

答案 0 :(得分:0)

您是否考虑过使用Visual Studio SQL Server数据比较?

我不确定这是否合适?这取决于您要如何处理我认为的结果。

在Visual Studio Professional 2017中,可以在“工具”菜单中,然后在“ SQL Server”中,然后在“新数据比较”中找到它。比较完成后,您可以更新目标数据库,生成脚本等。