如何从 Visual Studio 数据库项目部署特定对象?

Posted

技术标签:

【中文标题】如何从 Visual Studio 数据库项目部署特定对象?【英文标题】:How do I deploy specific objects from a Visual Studio database project? 【发布时间】:2013-10-17 11:24:55 【问题描述】:

我有一个 Visual Studio 2010 数据库项目,我想做部分部署,即指定对象。这可能吗?我能看到的唯一选择是进行完整部署或在生成脚本后停止。

例如,我正在更改许多表和存储过程,但并非所有内容都 100% 完成,我想将特定存储过程推送到我的测试数据库,包括其权限等。

我阅读了一些关于 SQL Server Data Tools 的信息,它显然支持这一点,但我不清楚是否必须迁移我的数据库项目才能使用它(还需要团队负责人的同意) ,或者如果它只是一个允许额外功能的插件。

【问题讨论】:

【参考方案1】:

查看Schema Comparisons。它们允许您选择要部署的对象。它们在没有 SQL Server Data Tools 的情况下可用。

【讨论】:

有什么方法可以在多个实例的命令行中自动执行此操作? dba.stackexchange.com/questions/222930/…【参考方案2】:

“部分部署”实际上有点危险。考虑一下您刚刚构建了您的数据库项目,您的整个 数据库项目,完成了表更改,并且它构建时没有错误或警告(对吗?)。现在您只想将存储过程部署到没有表更改的数据库中。

您的存储过程在所有更改的上下文中都没有出现错误或警告。您确定没有这些更改就不会出现错误或警告吗?

您应该考虑使用源代码控制解决方案来解决此问题。保存存储过程的副本,恢复到与要部署到的数据库匹配的代码版本,然后对存储过程进行更改。部署时,您将检查存储过程在您将部署到的数据库的上下文中是否有意义。

【讨论】:

以上是关于如何从 Visual Studio 数据库项目部署特定对象?的主要内容,如果未能解决你的问题,请参考以下文章

如何将 android 项目从 Visual Studio 部署到 Google Play 控制台?

如何配置 Visual Studio 2012 数据库项目以构建部署 .sql 文件

如何限制部署后脚本在 Visual Studio 数据库项目中仅运行一次

如何在另一个(客户端)系统上部署 Visual Studio“sql server 数据库项目”?

从 Visual Studio 数据库项目发布数据库需要哪些 SQL 权限

将文件动态添加到 Visual Studio 部署项目