2016-09-29 63 views
-2

在Visual Studio(2013或2015年,它们都做同样的事情)> SQL模式比较,我试图从SQL 2008上的一个数据库复制模式到数据库SQL 2014年。从2008年 - > 2008年工作正常,2014-> 2014工作正常,但试图从2008年 - > 2014年,它不起作用。运行比较和命中更新后,它只是坐在“模式比较生成脚本(db1> db2),直到它最终冻结,并且visual studio只是说它很忙,并且永远不会结束。我无法找到解释它得到什么点的日志停留在任。SQL模式从一个SQL版本到另一个不起作用的比较

在我试图忽视的兼容性问题,但不能解决它的选项。有什么建议?

回答

1

这可能是一个模式比较错误,我建议首先确保您使用的是最新版本的SQL Server工具(可在此处下载:https://msdn.microsoft.com/en-us/library/mt204009.aspx

然后,如果问题仍然存在,我建议使用以下说明捕获跟踪日志,并打开描述问题的连接问题,并在https://connect.microsoft.com/SQLServer/feedback/CreateFeedback.aspx处使用类别“Developer Tools(SSDT ,BIDS,等等)”

收集的事件日志中的SSDT

  • 打开一个新的命令提示为管理员。
  • 运行此命令logman创建跟踪-n DacFxDebug -p “微软SQLServerDataTools” 将0x800 -o “%LOCALAPPDATA%\ DacFxDebug.etl” -ets
  • 然后运行这个命令:logman创建跟踪-n SSDTDebug -p“ Microsoft-SQLServerDataToolsVS“0x800 -o”%LOCALAPPDATA%\ SSDTDebug.etl“-ets
  • 运行SSDT并重现此问题。
  • 回到命令提示符并运行以下命令: logman停止DacFxDebug -ets logman停止SSDTDebug -ets
  • 生成的ETL文件将位于%LOCALAPPDATA%\ SSDTDebug.etl &%LOCALAPPDATA%\ DacFxDebug.etl。
+0

对于第一个命令,在将其分解为两个命令后,第二个命令报告-ets未知,但它适用于第一个命令。没有-ets运行正常。 – Dispersia

+0

刚刚发现,你在第二个命令上粘贴的是一个程序,它将一个变成了一个,并且是无效的,但我现在正在运行它。 – Dispersia

+1

我编辑了上面的文本,从其他地方复制/粘贴,并且与StackOverflow格式不兼容。 –

0

而是击中“更新”尝试“生成脚本”,然后运行该脚本目标数据库

+1

两者都做同样的事情,它甚至没有达到那一点。通常,在该行的窗口中会出现两行,但它们都不会出现,它不会进入预览,更不用说生成脚本。 – Dispersia

相关问题