【问题标题】:Query useing two databases in SQL Report Builder在 SQL Report Builder 中使用两个数据库进行查询
【发布时间】:2011-11-10 19:08:59
【问题描述】:

我是 SQL Server Report Builder 2.0 的新手,我需要在一个查询中比较两个不同的数据库。基本上我需要检查一个数据库表中的值是否存在于另一个数据库的表中。

我知道我可以将多个数据源添加到我的报表中并使用子报表访问每个数据源,但我创建的每个数据集只能有一个查询。那么如何才能使用一个查询访问两个数据库呢?

或者,如果有另一种方法可以以某种方式加入来自多个 DataSet 的结果,那也可以。

此外,数据库位于同一台服务器上。

【问题讨论】:

  • 已回答:将 DataSource 指向服务器上的主表,而不是将其指向要从中提取的特定数据库。因此,您必须将所有表称为 .dbo..

标签: sql reportbuilder report-builder2.0


【解决方案1】:

将您的数据源指向服务器上的主表,而不是将其指向您要从中提取的特定数据库。因此,您必须将所有表称为 .dbo..

【讨论】:

  • 这不是违反惯例吗?
【解决方案2】:

如果数据库在同一台服务器上,您可以对存储过程执行一次查询,然后 proc 访问第二个数据库。

因此,在您的报告中,您仍将使用一个数据源并执行一个存储过程,但是当查询在数据库上运行时,它会处理来自第二个数据库的选择/连接。

通过这种方式,如果您需要这样做,您可以返回一个包含合并结果的数据集。我会警告说,跨数据库连接/选择等可能被认为是可维护性的不良做法,而且如果您决定将部署重组为多服务器设置,如果数据库不在同一台服务器上,您的连接将无法正常工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-05-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多