Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql Visual Studio 2010数据库项目安装程序/安装脚本_Sql_Database_Visual Studio 2010 - Fatal编程技术网

Sql Visual Studio 2010数据库项目安装程序/安装脚本

Sql Visual Studio 2010数据库项目安装程序/安装脚本,sql,database,visual-studio-2010,Sql,Database,Visual Studio 2010,我一直在使用VisualStudio2010中的一个数据库项目来创建一个数据库。VisualStudio使这个过程非常容易部署数据库和部署更新。我遇到的问题是如何让VisualStudio创建一个脚本,该脚本将构建我可以在QA或生产系统上使用的数据库 我以为构建项目会创建一个SQL文件来实现这一点,但这似乎不是真的。有人能告诉我怎么做,或者我明显缺少了什么简单的步骤吗。听起来很奇怪,Visual Studio在执行生成时没有创建SQL文件来部署数据库 相反,这发生在部署时。这背后的原因在于Vis

我一直在使用VisualStudio2010中的一个数据库项目来创建一个数据库。VisualStudio使这个过程非常容易部署数据库和部署更新。我遇到的问题是如何让VisualStudio创建一个脚本,该脚本将构建我可以在QA或生产系统上使用的数据库


我以为构建项目会创建一个SQL文件来实现这一点,但这似乎不是真的。有人能告诉我怎么做,或者我明显缺少了什么简单的步骤吗。

听起来很奇怪,Visual Studio在执行生成时没有创建SQL文件来部署数据库

相反,这发生在部署时。这背后的原因在于Visual Studio对要部署到的数据库进行更改的方式:为了更改数据库,它必须首先比较项目模型(如.dbproj中包含的文件中所定义)使用现有数据库架构的更改来确定自上次部署数据库以来所做的更改

然后,您可以选择手动执行使用SQLCMD命令行实用程序(或通过SQLCMD模式下的SSMS)生成的SQL脚本,或者,如果在项目设置中指定以下部署操作,您也可以将Visual Studio数据库项目配置为执行脚本:

Generate a deploy script (.sql) and deploy to the database
请注意,您需要在项目设置中提供连接字符串,以便VS知道部署到何处

当您到达要部署到QA或PROD环境的阶段时,您有两个选项:

  • 直接在Visual Studio中部署。除了第一次创建数据库项目时获得的标准调试和发布配置外,您还可以创建自己的配置,用于部署到QA和PROD环境中(即,可能具有不同的连接字符串/目标数据库名称)
  • 从生成服务器部署。在单独的计算机上安装Visual Studio,并对.dbproj/.sln文件调用MsBuild,并指定生成和部署目标以及相应的连接属性
道格·拉斯伯恩(Doug Rathbone)就这一主题写了一篇很棒的博客文章,如果您想了解更多信息:

我也有同样的问题,请找人帮忙