5

假设您有一个数据库项目,并且没有在 Database.sqldeployment 设置中选中“始终重新创建数据库”。假设您部署到一台已经拥有数据库的服务器,该数据库的名称与您正在部署的数据库相同。

在其他什么情况下,数据库部署会生成带有“DROP DATABASE”语句的脚本?

如果您从不希望您的数据库被通过右键单击您的数据库项目并选择“部署”生成的部署脚本删除,您可以采取哪些步骤来防止这种情况发生?

4

1 回答 1

3

除了未选中“始终重新创建数据库”之外,您还应该检查数据库项目的“属性”页面上的“开发”选项卡。确保您定义了目标连接。当您不定义一个项目时,项目将始终且仅部署为就好像目标数据库不存在一样。此行为是设计使然。有关更多详细信息,请参阅此链接

我的建议是使用 Windows 身份验证创建连接,以便每个用户都可以访问他们应该访问的扩展。

另请注意,您必须为每个部署配置(例如调试、发布等)执行此操作

我个人将部署操作设置为仅创建一个脚本并手动运行它以确保安全!

于 2012-09-06T15:07:28.113 回答