簡體   English   中英

SSRS報表生成器2.0如何鏈接2台服務器並在一個數據集中運行

[英]SSRS report builder 2.0 How to link 2 servers and run in one dataset

我正在嘗試找到一種方法來鏈接來自SSRS Report Builder 2.0中兩個服務器的數據

最終使用一個數據集查詢2個不同服務器中的2個數據庫。

我擁有的SQL非常基本,如下所示,我可以在SQL Management Studio中輕松運行查詢。

select * from
[server1].[DES].[dbo].[Daily] dr 
LEFT JOIN [server2].[VES].[dbo].[Rou] mr
ON dr.ID = mr.id

我對報告服務器的訪問權限也是只讀的,因此我無法真正對配置進行任何管理更改。

我已經探索了連接字符串來創建連接,但是它只允許我為每個數據集連接到一台服務器。 我想做的是使用一個數據集

由於我是SQL和SSRS的大三學生,因此任何幫助將不勝感激。

使用SSRS和MS SQL 2008 R2

如果您從SSMS執行此查詢,則表示該另一台服務器是鏈接服務器。 那么從SSRS執行它應該沒有什么不同。

是的,您只能將一台服務器添加到數據集的數據源,無論是共享數據源還是嵌入式服務器。

但是,例如,如果您在執行查詢時指向服務器A的數據源將要從服務器A以及服務器B提取數據,則將對服務器B中的對象使用完全合格的名稱,而對服務器A中使用兩部分的名稱。

像這樣的東西...

SELECT * 
FROM Schema.Table_Name A INNER JOIN [ServerNameB].DataBase.Schema.TableName B
ON A.ColumnA = B.ColumnA

顯然ServerB必須是一個Linked Server

我可以想到兩種可能的解決方案

選項1:在server1上創建存儲過程(通過查詢訪問另一台服務器)。 並從SSRS(數據集)調用此存儲過程。

選項2:在RDL上創建具有兩個不同連接字符串的兩個數據集(一個用於Server1,另一個用於Server2)。 在報表制作工具中使用“ LookUpDataSet ”功能可以使用關鍵字段合並結果。

選項2是更可取的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM