我想从数据库和我的数据库项目创建一个delta脚本。数据库作为源和数据库项目作为目标。 Update
按钮工作正常,没有任何错误,我的错误列表仅包含此警告:
源的登录名没有VIEW ANY DEFINITION权限。如果目标是数据库,则比较将限于数据库范围的元素。
此权限:https://technet.microsoft.com/en-us/library/ms175808(v=sql.105).aspx
帖子Update target button is disabled after schema comparison对我没有帮助。
如何在Visual Studio Enterprise 2017中激活generate Script
按钮?
我真的需要访问元数据来生成脚本吗?
(适用编辑):
即使拥有此权限,它也无效。但是我可以在比较两个数据库时生成脚本。
答案 0 :(得分:9)
生成脚本按钮。要生成脚本,您可以直接与目标数据库进行比较,而不是与数据库项目进行比较。
答案 1 :(得分:1)
在比较数据库模式之前,请确保您重建了解决方案。为此,请在Visual Studio中:
现在尝试比较数据库架构。您应该能够看到生成脚本选项已启用。
答案 2 :(得分:1)
尝试构建项目,您可能会遇到无法编译的问题
答案 3 :(得分:0)
如果没有收到错误或警告,请确保在Sql项目属性“项目设置”中确保目标平台与要比较的SQL Server版本匹配。
将其更改为对应版本时,您会看到更新和生成脚本按钮将被启用,