【问题标题】:Can I Manage Only a Portion of my Database with a Database Project?我可以使用数据库项目只管理我的数据库的一部分吗?
【发布时间】:2014-11-12 16:07:44
【问题描述】:

我们有一个第三方 SQL Server 2008 数据库,我们用我们自己的表、存储过程等进行了扩展。我们希望使用 Visual Studio 数据库项目来管理我们的扩展对象,但不是作为其中一部分的对象第三方数据库。

如果我创建一个只包含我们的对象的项目,当我去部署它们时会出错,因为 VS 认为它们引用的表(它们是原始数据库的一部分)不存在(因为它们不是一部分项目)。

我尝试为原始数据库创建一个 DACPAC 并仅引用它,但那里有新类型的对象,看起来无法将其推入其中。我也尝试过进行完整的模式比较并将所有第三方数据库对象添加到我的项目中,但是有太多对象似乎要轰炸 VS。我今天将使用本地数据库再次尝试,看看是否可能是网络问题导致了该问题。

如果可能的话,我不反对关闭这些类型的错误。如有任何建议,我将不胜感激。

【问题讨论】:

    标签: sql-server database sql-server-2008 database-project


    【解决方案1】:

    所以答案是 DACPAC。我曾尝试使用两个不同的数据库,以使用 SSMS 中数据库的上下文菜单中的工具,您可以在其中提取数据层应用程序,但这两个数据库都失败了。在another post on S.O. 之后,我发现了 SQL Server 2008 附带的这个命令行工具 SqlPackage。Here 是一个解释如何使用它的链接。无论如何,我对每个数据库都运行了它,它甚至没有打嗝。把他们两个都钉了。

    对我来说,应用程序位于:C:\Program Files (x86)\Microsoft SQL Server\110\DAC\bin

    创建 DACPAC 文件后,将它们复制到项目中的某个位置,然后从项目菜单或解决方案资源管理器中引用节点的上下文菜单中执行“添加数据库引用”。添加引用,并删除它为您提供的变量名称。在下拉列表中选择“Same Database”,您将在底部看到示例查询的外观。点击确定,它会为您设置好一切。所有参考错误都消失了。问题解决了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-08-07
      • 2010-11-04
      • 2018-08-12
      • 1970-01-01
      • 1970-01-01
      • 2010-12-29
      相关资源
      最近更新 更多