Visual Studio数据库项目中“构建”,“编译”和“无”构建操作之间的区别

时间:2016-08-11 13:08:00

标签: visual-studio sql-server-data-tools database-project sql-scripts buildaction

虽然我可以找到(在网络上)有关SQL脚本的PreDeployPostDeploy 构建操作的大量信息 Visual Studio 2012 数据库项目,我了解None在部署时不编译或包含脚本,请任何人明确建议或指导我做一篇明确定义微妙之处的文章。 BuildCompile

我粗略的假设是这两个将针对架构进行编译,但只会部署Build。这是对的吗?

我想要的是正确的设置,以针对当前架构验证我的播种脚本(并导致无效架构结构上的构建错误),但不部署数据库发布或显示在架构比较会话中。

2 个答案:

答案 0 :(得分:2)

在数据库项目中," Build"用于sql文件和"编译"用于C#或VB(即SQL CLR)文件。在构建数据库项目时,输出是一个dacpac文件,其中包含已处理的" Build" sql文件和包含已处理的"编译"的.NET程序集(dll)文件。 C#或VB文件。

标记为"无"的文件简直被忽略了。

答案 1 :(得分:-1)

编译意味着将源代码转换为目标代码。

构建包括编译,但在SSDT中,部署是与Build的单独操作。

供参考: https://en.wikipedia.org/wiki/Software_build

https://en.wikipedia.org/wiki/Compiler