如何在VSDBCMD未部署时进行故障排除,但没有显示错误?

时间:2012-03-13 21:11:43

标签: visual-studio-2010 deployment database-deployment vsdbcmd

我正在尝试使用VSDBCMD.exe(Visual Studio 2010版本)来部署数据库项目的输出。我在命令行中包含/ dd:+开关。每次运行命令时,我都会收到一条消息:

TSD00566        Deployment script generated to:
C:\Deploy\SqlServerDB.txt

没有错误,但部署脚本未执行且未进行部署。我没有打开/Quiet开关。

我已尝试在命令行上指定所有参数并使用.deploymentmanifest文件。我得到相同的结果:生成脚本文件,但不执行。没有部署架构更改。

我知道我的连接字符串是正确的,因为生成的部署脚本是有效的(甚至引用仅存在于目标SQL服务器上的文件路径)。

我当前的命令行(如最近的尝试)是

vsdbcmd.exe 
    /a:Deploy 
    /cs:"Data Source=[the correct server];Integrated Security=True;Pooling=False;Initial Catalog=[the correct database]" 
    /Quiet- 
    /dd:+ 
    /p:TargetDatabase="[the correct database]" 
    /dsp:Sql 
    /Model:"C:\[output path]\SqlServerDB.dbschema"

你可以帮我弄清楚如何解决这个命令,因为我没有收到任何错误信息或有用的输出吗?

1 个答案:

答案 0 :(得分:0)

当VSDBCMD生成增量脚本并检测到数据库项目与目标数据库之间没有任何更改时,它不会执行部署步骤。

但是,它也没有显示任何消息,表明它未进行部署的原因。因此,没有错误(ergo没有错误消息),但它没有部署,因为源脚本在我们第一次运行命令后与目标数据库相同。

如果有某种消息表明“没有部署更改”会很好,但至少我现在知道它正在按设计运行,并且没有必要进行部署。