我必须将大量遗留SQL查询转换为存储过程(重写和整理),我正在寻找一种有效的方法来逐一比较结果,以确保我没有修改行为。我目前使用SQLDelta,但它要求我将每个查询的结果传递到表中,并使用SSIS将其传输到单独的服务器。这是因为SQL Delta适用于比较数据库/表而不是数据集。它不会比较同一个数据库中的表。
我真正想知道的是,是否有人使用方法/工具以SQLDelta方式比较即席查询结果(即匹配PK上的匹配行,突出显示差异,间隔结果以显示其他/缺少的行每一套)。理想情况下,我会粘贴SQL之前和之后并生成结果。结果集可以是~10到200k行和~50列。
无法相信我无法通过谷歌找到这些方面的东西。任何帮助表示赞赏。
由于
答案 0 :(得分:1)
一种低技术方法是将每个结果输出到一个文件中(SQL Manager有一个'结果到文件'按钮)并使用像tortoise merge这样的差异工具。
修改
如果您从未将sql Manager中的结果作为文本提取,则以表格格式显示。
PrimaryLocation_FacilityLongName SecondaryLocation_FacilityLongName HasPublicComment HasPublicAttachment CMRID CustomerIDNumber
---------------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------------- ---------------- ------------------- ------------------------------------ ------------------------------
BCCH-Ambulatory Care Center NULL NULL NULL 95FA6986-DB86-4E6F-8C48-05948AA94A30 1145
BCCH-Ambulatory Care Center NULL NULL NULL 0E40FF65-804E-47F7-9BCC-112185196162 1146
BCCH-Ambulatory Care Center NULL NULL NULL 908C5ADB-333C-42D0-9CDD-2FF196696B00 103
BCCH-Ambulatory Care Center NULL NULL NULL BA8239B2-BF53-451F-A6B2-44432D8B7BC7 1241
BCCH-Ambulatory Care Center NULL 0 NULL 3B873A2C-4E1C-4E26-A3F7-6FDB0EE61EF2 1244
BCCH-Ambulatory Care Center NULL NULL NULL 417242E8-E656-4AA3-A4B7-989E5740C84B 1239
只要订购查询。您所要做的就是打开Tortoise合并并在文件中查找红点。如果没有,你就可以去。