有没有办法从我的数据库项目中引用另一个数据库而不直接引用它?
例如,我希望能够写出这样的东西:
CREATE VIEW View1
AS
SELECT X FROM OtherDB.dbo.Table1
有没有办法从我的数据库项目中引用另一个数据库而不直接引用它?
例如,我希望能够写出这样的东西:
CREATE VIEW View1
AS
SELECT X FROM OtherDB.dbo.Table1
您最好的选择是为您的项目添加数据库引用。对于 VS2010 和更低版本的 DBProj 文件,您需要生成一个 dbschema 文件并将其添加为数据库引用。对于 SSDT,您需要使用 dacpac 文件。这适用于大部分是静态的项目,您甚至可以对其进行裁剪以仅包含相关的对象。
VS2010, 2008 - http://msdn.microsoft.com/en-us/library/dd193283%28v=VS.90%29.aspx具有将现有数据库导出到 dbschema 文件所需的文档。将其放置在您的项目可以访问的地方并将其添加为“数据库参考”。
SSDT - http://msdn.microsoft.com/en-us/library/hh550080%28v=VS.103%29.aspx为您提供生成 dacpac 文件的命令行参考。生成后,将其放置在项目可以访问的位置并添加为数据库引用。
我在这里有一篇关于 SSDT 的博客文章:http: //schottsql.blogspot.com/2012/10/ssdt-external-database-references.html