我的 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 行创建数据库失败。无法创建列出的某些文件名。检查相关错误。
执行批处理时发生错误。
实际路径在这里:
C:\Program Files\Microsoft SQL Server**MSSQL10_50.MSSQLSERVER**\MSSQL\DATA\Acme_Database.mdf
我可以在数据库项目中找到的对路径的唯一引用是在根文件夹中,该文件名为:
PRIMARY.Acme_Database.sqlfile.sql
它包括我更改为使用 _50 路径的 ALTER DATABASE 语句,但这并没有解决问题。
我不确定为什么 db 项目无论如何都需要知道实际数据库 MDF 文件的位置——我原以为它可以通过 TSQL 连接到它,但无论如何我都无法部署项目有这个错误,希望有任何帮助。