在处理VS数据库项目时,我有很多困惑。好的,当尝试将DB项目部署到目标数据库时,如果对象中包含对同一数据库的引用,则对象(SP、触发器)仍然引用以前的数据库。例如:
我有一个SP,它包含其中一个表引用DBName..TableName。在我使用新名称将我的项目部署到目标数据库后,该对象仍然引用相同的DB,即DBName。现在,为了使我的部署正常工作,我将这个硬编码的名称更改为$(DBName) variable,并在将数据库部署到目标DB时将其作为变量传递。这会在部署时产生错误。因此,我们是否可以将包含交叉引用或对同一DB的引用的数据库项目部署到新的数据库目标,并完全更改这些名称。
发布于 2012-10-14 18:24:48
只需尝试“发布...”命令(右击解决方案资源管理器中的项目)。对话框打开后,您可以设置变量的值(例如$(MyDatabase)。如果您选择“创建发布脚本”-Option,则会生成一个脚本,其中包含可设置为目标数据库的SQLCMD变量。
https://stackoverflow.com/questions/12561456
复制相似问题