VS 2010数据库项目定义了相对路径

时间:2012-03-09 16:21:04

标签: visual-studio-2010

下面的

是保存Script.PostDeployment.sql的文件夹结构。

C:\ABC1\ABC2\Dev\Source\ABC3\ABC4\Scripts\Post-Deployment\Script.PostDeployment.sql

我想在Script.PostDeployment.sql中定义相对路径以从另一个文件夹运行脚本。下面的文件夹有多个脚本存储。

C:\ABC1\ABC2\Dev\DB\Scripts\Release 0\Sprint1\

将在语法下工作吗?

:r DB\Scripts\Release 0\Sprint1\.\.\.\.\myfile.sql  

谢谢!

1 个答案:

答案 0 :(得分:2)

答案是“也许”。语法特定于SQLCMD(:r是SQL Command指令),但如果使用SSMS打开脚本,则相对路径是相对于SSMS的,而不是您正在运行的脚本。这可能会有点棘手。如果您只使用Visual Studio或SQLCMD(命令行工具)进行部署,那么这可行。如果您打算使用任何其他工具进行部署(例如Sql Managment Studio),那么我就不会使用相对路径。

当开发人员说“它适合我”并且部署/ dba团队说“它已经坏了”时,这会引起很大的困惑和痛苦。

希望这有帮助。