VS2010数据库项目部署错误SQL01268目录查找失败

ssm*_*ith 4 visual-studio-2010 visual-studio-dbpro dbproj

我的VS2010数据库部署在构建服务器上失败,构建服务器上安装了SQL Server 2008 R2.这是相关的输出:

创建Acme.Database ...

D:\ TeamCity\BuildAgent\Work\da2fc5ebd5805d44\src\Acme.Database\sql\Acme.Database.sql(30,0):错误SQL01268:.Net SqlClient数据提供者:消息5133,级别16,状态1,行1文件"C:\ Program Files\Microsoft SQL Server**MSSQL10.MSSQLSERVER**\MSSQL\DATA\Acme_Database_log.ldf"的目录查找失败,出现操作系统错误3(系统找不到指定的路径.).

D:\ TeamCity\BuildAgent\Work\da2fc5ebd5805d44\src\Acme.Database\sql\Acme.Database.sql(30,0):错误SQL01268:.Net SqlClient数据提供者:消息1802,级别16,状态1,行1 CREATE DATABASE失败.无法创建列出的某些文件名.检查相关错误.

批处理执行时发生错误.

实际路径在这里:

C:\ Program Files\Microsoft SQL Server**MSSQL10_50.MSSQLSERVER**\MSSQL\DATA\Acme_Database.mdf

我在数据库项目中找到的路径的唯一引用是在根文件夹中,该文件名为:

PRIMARY.Acme_Database.sqlfile.sql

它包含一个ALTER DATABASE语句,我更改为使用_50路径,但这并没有解决问题.

我不确定db项目为什么需要知道实际的数据库MDF文件在哪里位于哪里 - 我原以为它可以只通过TSQL连接到它,但无论如何我都无法让项目部署有这个错误,将不胜感激任何帮助.

Rya*_*ell 10

如果在Schema Objects\Database Level Objects\Storage\Files(使用Add Item,File)中指定"文件",则路径中指定的值将覆盖从服务器查找的值.如果必须指定它们,请使用sqlcmdvariables $(DefaultdataPath)$(Databasename)中的变量来填充.