SQL Schema从一个SQL版本到另一个SQL版本的比较不起作用

时间:2016-09-29 17:04:15

标签: sql visual-studio sql-server-2008 sql-server-2014 sql-server-data-tools

在Visual Studio(2013年或2015年,他们都这样做)> SQL Schema Compare,我试图将模式从sql 2008上的一个数据库复制到sql 2014上的数据库。从2008年开始 - > 2008年工作正常,2014-> 2014年工作正常,但是当试图从2008年 - > 2014年开始,它不起作用。在运行了比较并点击更新后,它只是位于“架构比较生成脚本(db1> db2)”,直到它最终冻结,并且visual studio只是说它很忙,并且永远不会完成。我找不到一个解释它是什么点的日志陷入困境。

在选项下我试图忽略兼容性问题,但这并没有解决它。有什么建议吗?

2 个答案:

答案 0 :(得分:1)

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

然后,如果问题仍然存在,我建议使用以下说明捕获跟踪日志并打开描述问题的Connect问题,并在https://connect.microsoft.com/SQLServer/feedback/CreateFeedback.aspx使用“开发人员工具”类别包含跟踪日志( SSDT,BIDS等)“

收集SSDT的事件日志

  • 以管理员身份打开新的命令提示符。
  • 运行此命令logman create trace -n DacFxDebug -p“Microsoft-SQLServerDataTools”0x800 -o“%LOCALAPPDATA%\ DacFxDebug.etl”-ets
  • 然后运行此命令:logman create trace -n SSDTDebug -p“Microsoft-SQLServerDataToolsVS”0x800 -o“%LOCALAPPDATA%\ SSDTDebug.etl”-ets
  • 运行SSDT并重现此问题。
  • 返回命令提示符并运行以下命令: logman停止DacFxDebug -ets logman stop SSDTDebug -ets
  • 生成的ETL文件位于%LOCALAPPDATA%\ SSDTDebug.etl& %LOCALAPPDATA%\ DacFxDebug.etl。

答案 1 :(得分:0)

尝试“生成脚本”,而不是点击“更新”,然后在目标数据库上运行脚本。