銷售: 1-800-867-1380

在 Azure 上學習 SQL Reporting (9 個步驟的教學課程)

更新日期: 2014年5月

Important重要事項

了解如何使用報表產生器及 Adventure Works for Azure 範例資料,在 Azure 上建立及部署 SQL 報表。每個步驟都會明確標示,好讓您可以往前跳到您想要學習的技巧。

步驟 1:在 Azure 上設定 SQL Database

步驟 2:在 Azure 上下載及安裝 Adventure Works 資料庫

步驟 3:在 Azure 上設定 SQL Reporting

步驟 4:在 SQL Reporting 上建立資料來源

步驟 5:下載並安裝報表產生器

步驟 6:建立報表

步驟 7:檢視 Azure 的報表

步驟 8:保護報表的安全

步驟 9:監視報表使用情況

後續步驟

當您完成此教學課程時,您將會擁有向下鑽研報表,依據領域顯示 Adventure Works 年度銷售量。

此教學課程的要求包括擁有 Azure 訂閱、報表撰寫工具和範例資料。您可以使用現有的訂閱、新的訂閱或免費試用訂閱。如需詳細資訊,請參閱 Azure 平台優惠

Azure 的訂用帳戶會提供此教學課程所使用的 [SQL Database][SQL Reporting]。此教學課程包含佈建這兩個服務的步驟。如果您已經佈建,請跳到其他步驟。

[報表產生器 3.0] 會用來建立您將上傳到 SQL Reporting 的報表。或者,您也可以選擇使用 [SQL Server Data Tools] 中的報表設計師,但是其步驟將會與本教學課程提供的步驟不同。

Adventure Works for Azure SQL Database。範例資料庫為選擇性,但是如果您想要遵循本教學課程的所有步驟進行便需要它。請記住,SQL Reporting 只能從 SQL Database 擷取資料,因此,您用於報表的任何範例資料都必須裝載於 Azure 中的 SQL Database。

您可以只在 SQL Database 上建立伺服器,而不需要同時建立資料庫。雖然在您可以安裝資料庫之前必須擁有現有的伺服器,但是您還不需要資料庫。

以下是設定伺服器的幾個步驟。

  1. 連接到以下的管理入口網站:http://manage.windowsazure.com。如果您尚未登入,系統會要求您輸入對您的訂用帳戶有效的認證。

  2. 在管理入口網站中,按一下導覽提要欄位中的 [SQL Database],以顯示 SQL Database 頁面。

  3. 按一下頁面頂端的 [伺服器]

  4. 按一下頁面底部的 [新增],以建立新的服務。

  5. 在 SQL Database 伺服器設定中,提供管理員帳戶的登入名稱和密碼。請記住管理員名稱和密碼;當您在步驟 2 執行安裝 Adventure Works 資料庫的命令時,您必須指定這兩者。

  6. 建立可用於 SQL Database 和 SQL Reporting 的資料頁區。在相同資料中心使用資料和報表時,報表效能會大幅提升。

  7. 請務必核取 [允許其他 Azure 服務存取這部伺服器]。如果沒有核取此選項,SQL Reporting 將無法從 SQL Database 擷取資料。

  8. 在 SQL Database 頁面的 [伺服器] 索引標籤上,按一下您剛才建立的伺服器,然後按一下頁面頂端的 [設定],允許從本機電腦連接到伺服器。

    此入口網站會自動建立一個規則,允許從本機電腦建立傳入連接。按一下向右箭號,接受預先定義的規則,然後按一下 [儲存],在伺服器上套用這項變更。如需詳細資訊,請參閱How to: Configure the Server-Level Firewall Settings (Azure SQL Database)



    您必須等候幾分鐘,讓這項變更生效。

    note附註
    在執行資料庫安裝指令碼時,略過這個步驟或指定不足的範圍將會產生各種錯誤。如果您在<步驟 2:在 Azure 上下載及安裝 Adventure Works 資料庫>執行資料庫安裝指令碼時發生錯誤,請掃描命令列輸出中是否有「無法開啟登入所要求的伺服器 <GUID>。不允許 IP 位址 <IPaddress> 的用戶端存取伺服器。」這個錯誤告訴您,IP 範圍不包括目前裝置的 IP 位址。您可以展開此範圍來包含錯誤所提的 IP 位址,以解決這個錯誤。如果您已經這樣做,此方案可能要等候長一點的時間,才能在資料中心處理防火牆規則。

Adventure Works for Azure 是已經過修改的 SQL Server 關聯式資料庫,可在 Azure 上運作。它包含了 SQL Database 所需的叢集索引。

在這個步驟中,您將會在本機電腦下載及解壓縮資料庫檔案,然後執行可在 SQL Database 上安裝資料庫的指令碼。這裡並沒有需要考量的硬體或軟體需求,您可以使用任何 Windows 工作站執行這個步驟。

  1. 請前往 Adventure Works for Azure SQL Database (在 CodePlex 上) 下載資料和安裝檔案。

  2. 以滑鼠右鍵按一下 .zip 檔案,將其內容解壓縮。

  3. 使用 [以系統管理員身分執行] 選項來啟動命令提示字元視窗。如需相關指示,請參閱以系統管理員身分啟動命令提示字元 (Windows 7)Windows 8 命令提示字元 - 以系統管理員身分執行 (Youtube 影片)

  4. 導覽至 \AdventureWorks 子資料夾,其中包含用來安裝資料庫的 .cmd 檔案。

  5. 輸入下列命令,以伺服器名稱、管理員名稱和密碼的實際值替代預留位置。

    CreateAdventureWorksForSQLAzure.cmd <servername>.database.windows.net <username> <password>
    
    必要時,您可以從入口網站取得伺服器名稱和管理員名稱。在入口網站移至 [SQL Database] 中的 [伺服器] 頁面。按一下伺服器名稱,開啟伺服器頁面。在伺服器頁面上,按一下 [儀表板],然後複製 [管理 URL]。完整位址為伺服器名稱,但是在命令列上貼上伺服器名稱時,應該省略 "https://" 首碼。

    您可以直接將此資訊貼上命令列。如需詳細資訊,請參閱如何貼到命令提示字元

  6. 按 Enter 鍵,執行此命令。此作業需要幾分鐘的時間才能完成。在最後,您應該會看到安裝成功的訊息。

    如果防火牆組態不允許從路由器的 IP 位址建立連接,這個步驟將會發生錯誤。如果發生錯誤,請回到<步驟 1:在 Azure 上設定 SQL Database>中的防火牆組態。

  7. 您可以使用管理入口網站驗證資料庫安裝。在 http://manage.windowsazure.com 中的 [SQL Database] 頁面上,您可以按一下頁面上方的 [資料庫],以檢視與您的訂用帳戶有關之任何伺服器上的現有資料庫。

  1. 連接到以下的管理入口網站:http://manage.windowsazure.com

  2. 按一下頁面底部的 [新增]

  3. 按一下 [資料服務],再按一下 [SQL Reporting],然後按一下 [快速建立],以指定佈建服務所需的最少資訊。其中包括服務名稱、資料頁區、管理員和密碼。

  4. [服務名稱] 中,輸入將幫助您在入口網站識別及管理服務的名稱。此名稱只會在入口網站頁面使用。您不能使用它當做 Web 服務 URL。Azure 將會指派可在叢集中唯一識別您的服務執行個體的服務 GUID。

  5. [資料頁區] 清單中,選擇為 SQL Database 選取的相同資料頁區。在相同地區的資料中心尋找這兩個服務將會大幅減少擷取資料所需的時間。您只能在每個訂閱的每個可用資料頁區中建立一個報表伺服器。

  6. 輸入管理員帳戶的使用者名稱和密碼。

  7. 按一下 [建立 SQL Reporting Service] 旁邊的核取記號,以建立此服務。

在 SQL Reporting 的術語中,資料來源指的是可重複使用的連接資訊,這種資訊會定義一次、集中管理並且用於多份報表。在這個步驟中,您將會在 SQL Reporting 上建立資料來源,然後將它用於將來的報表。

  1. 在管理入口網站的 [SQL Reporting] 上,按一下您剛才建立的服務。

  2. 按一下頁面頂端的 [項目]。此頁面會列出目前服務可用的報表、資料來源和資料夾。

  3. 按一下頁面底部的 [新增],然後按一下 [建立資料來源]

  4. [資料來源名稱] 方塊中輸入 AW4Azure。您也可以選擇在 [資料來源描述] 中輸入描述。

  5. 選擇在這個資料來源中所要使用的 SQL Database。資料庫必須裝載於 SQL Database 執行個體,該執行個體建立在用於 SQL Reporting 的相同訂用帳戶之下。您無法從不同的訂用帳戶選擇 SQL Database。

    由於您已經安裝 AdventureWorks for Azure 資料庫,所以可以針對您的 SQL Reporting 資料來源選取該資料庫。

  6. 在第二個頁面上,指定認證選項。選擇 [安全地儲存在報表伺服器中的認證],然後輸入有權存取 SQL Database 上 AdventureWorks 的使用者名稱和密碼。在本教學課程中,使用者名稱和密碼是您在步驟 1:在 Azure 上設定 SQL Database 提供的管理員登入。

  7. 按一下核取方塊,儲存您的變更。

在這個步驟中,您會安裝報表產生器 3.0,它會用來建立在 SQL Reporting 上執行的報表。移至下載報表產生器,然後執行安裝程式。

或者,您也可以使用 [SQL Server Data Tools] 中的報表設計師來建立報表,但是其步驟將會與本教學課程提供的步驟不同。請參閱<安裝 SQL Server Data Tools 以便在 Azure 上建立報表>。

現在您可存取範例資料、服務及撰寫工具,您就準備好要使用 AdventureWorks 中的銷售資料建立報表。報表產生器需要報表服務執行資料擷取及轉譯。您會先做的幾件事之一就是指定 SQL Reporting 執行個體當做這份報表的報表伺服器引擎。

  1. 啟動報表產生器。在 [開始] 功能表上,按一下 [所有程式],然後按一下 [Microsoft SQL Server 2012 報表產生器]

  2. 關閉 [使用者入門] 頁面,好讓您可以指定報表服務當做預設伺服器使用。按一下頁面底部的 [連接]



  3. [連接到報表伺服器] 對話方塊的清單方塊中,按一下包含所要使用資料來源之報表伺服器的 Web 服務 URL。由於您在上一個步驟已經設定 SQL Reporting 執行個體,所以您應該會在可用伺服器清單中看到此 Web 服務。



    note附註
    從本教學課程的中間部分開始或者使用另一部電腦建立報表都表示,您可能無法在清單中看到報表服務。在此情況下,請使用管理入口網站來取得報表服務的 Web 服務 URL。您可以從 SQL Reporting 儀表板頁面複製 URL,然後將此 URL 貼到文字方塊中。

    當您指定伺服器之後,請按一下 [連接]

  4. 輸入使用者名稱和密碼,以連接到 SQL Reporting。這不是 Azure 訂用帳戶,而是您在 SQL Reporting 中定義的帳戶,之後會使用此帳戶來存取 SQL Reporting 所管理的報表和其他項目。提供您在<步驟 3:在 Azure 上設定 SQL Reporting>中所指定的使用者名稱和密碼。

    您現在應該會看到類似於以下螢幕擷取畫面的連接訊息。



  5. 在報表產生器的 [報表資料] 窗格中,以滑鼠右鍵按一下 [資料來源],然後選取 [加入資料來源]。將資料來源命名為 AW4Azure、選取 [使用共用連接或報表模型],然後選取已經提供的共用資料來源連接。這是您在<步驟 4:在 SQL Reporting 上建立資料來源>的 SQL Reporting 中建立的資料來源。



  6. [按一下以加入標題] 中輸入報表名稱,例如依領域的年度銷售量

  7. 以滑鼠右鍵按一下 [資料集],再按一下 [加入資料集],然後提供名稱,例如 TerritorySales

  8. 按一下 [使用內嵌在我的報表中的資料集]

  9. 在 [資料來源] 中,按一下 AW4Azure

  10. 複製下列 SQL 查詢並貼到查詢視窗中。

    SELECT
    soh.[SalesOrderID]
    ,DATEPART(year, soh.[OrderDate]) AS 'Year'
    ,soh.[CustomerID]
    ,soh.[TerritoryID]
    ,terr.[Name] as 'TerritoryName'
    ,terr.[CountryRegionCode] as 'Country'
    ,soh.[TotalDue] as 'TotalSales'
    FROM [Sales].[SalesOrderHeader] AS soh
    JOIN [Sales].[SalesTerritory] AS terr
    ON terr.[TerritoryID] = soh.[TerritoryID]
    ORDER BY 'Year'
    
    您的螢幕看起來應該類似下面的螢幕擷取畫面。



  11. 按一下 [確定],即可建立資料集。資料集現在應該包含 TerritorySales,而且有訂單 ID、年份、領域、國家/地區及總銷售等資料行。

  12. 按一下 [插入] 功能表上的 [矩陣],然後按一下 [矩陣精靈]

  13. 選取 TerritorySales 資料集,然後按 [下一步]

  14. 在表格配置中,將 TotalSales 拖曳到 [值] 區域、將 Year 拖曳到 [資料行]、將 Country 拖曳到 [資料列]、將 TerritoryName 拖曳到 Country 底下。

    您的精靈看起來應該類似於下列範例:



  15. 選取其餘頁面上的預設值來完成精靈作業。

  16. 報表配置隨即出現在設計介面上。請調整資料行,好讓每個資料行有更多空間。

    複選包含 SUM(總金額) 的所有資料格,然後按一下數字區域中的貨幣符號,以套用貨幣格式。



  17. 在首頁按一下 [執行] 來執行報表。請等候一分鐘的時間讓報表載入。此時,報表看起來應該類似於下列螢幕擷取畫面。



  18. 按一下 [設計] 返回工作空間。

  19. 按一下 [儲存]。因為 SQL Reporting 是預設伺服器,所以系統將會要求您在 Azure 上儲存報表。為檔案提供描述性名稱,例如 AW-TerritorySales



回到 Azure 管理入口網站,檢視您剛才從報表產生器上傳的報表。在 [項目] 頁面上,您應該會看到 AW-TerritorySales 報表。

目前無法從 [項目] 頁面轉譯,所以您必須使用 [儀表板] 頁面才能檢視報表。

  1. 按一下 [SQL Reporting],再按一下報表服務,然後按一下 [儀表板]

  2. 向下捲動來按一下 Web 服務 URL。

  3. 使用您在<步驟 3:在 Azure 上設定 SQL Reporting>中提供的認證來輸入 SQL Reporting 使用者名稱和密碼。

  4. 隨即出現報表伺服器 HTML 網頁。按一下 AW-TerritorySales 報表以檢視報表。



    隨即在相同的瀏覽器視窗中開啟報表。您可以搜尋報表中的特定值,或以其他格式進行轉譯。

您身為報表服務管理員,所以可以檢視報表,其他人則無法檢視報表,除非您授與存取權限給他們。

  1. 在管理入口網站中,按一下 [SQL Reporting],然後開啟可裝載 AW-TerritorySales 報表的報表服務。

  2. 按一下頁面頂端的 [使用者]

  3. 按一下頁面底部的 [建立]

  4. 輸入使用者名稱、密碼和角色。

    您提供的認證不必對應到現有的帳戶資訊。您在 [使用者] 頁面上指定的帳戶只是用來存取報表服務所管理的項目。

    [瀏覽者] 是預設角色,它會傳遞有關項目的讀取權限。如需有關其他角色的詳細資訊,請參閱預先定義的角色

角色指派是在報表資料夾階層的根節點指定。您發行至報表服務的任何資料夾、報表或資料來源都會繼承在根節點所定義的權限。您可以在該階層中增加或限制個別項目的權限,方法是中斷權限繼承以及在個別項目上指定新的角色指派。

您可以在管理入口網站的 [儀表板] 頁面上追蹤報表的執行。如果您想要額外的見解,包括哪些人執行報表、哪些報表最活躍,以及是否產生錯誤或警告,您也可以分析執行記錄。如需詳細資訊,請參閱了解 SQL Reporting 使用量 (Azure SQL Reporting)

每個報表檢視都計算為一個計費事件。了解哪些事件會收費可在報表和報表使用者數目隨著時間增加的同時,幫助您管理成本。如需詳細資訊,請參閱Azure SQL Reporting 中的帳戶和計費 (Azure SQL Reporting)

現在您已經知道建立報表及儲存到 Azure 的步驟,下一個步驟就是確保需要存取此服務的每個人都可以做到。

管理員在設定資料存取時要考慮以下事項:

  • 想要儲存或使用 SQL Reporting 報表的所有使用者都必須擁有 SQL Reporting 帳戶和角色指派。[瀏覽者] 角色對於僅限檢視的存取很足夠,但是報表作者需要 [發行者][參與者] 存取。這就是您在步驟 9 執行的活動。

  • 建立報表來從 SQL Database 擷取資料的報表作者將需要代表他們建立的防火牆規則,以便可以從本機電腦連接到 SQL Database。如需詳細資訊,請參閱<How to: Configure the Server-Level Firewall Settings (Azure SQL Database)>。

  • 報表作者也需要 SQL Database 登入和權限,才能存取資料庫。您身為 SQL Reporting 管理員,也可以建立共用資料來源當做允許使用預存認證進行連接的替代方式。如需詳細資訊,請參閱Managing Databases and Logins in Azure SQL Database

開發人員可能會想要探索在新的或現有應用程式中使用報表的其他方式。Azure 上的報表可以使用 ReportViewer 控制項整合到應用程式。如需詳細資訊,請參閱下列連結:<How to: Use ReportViewer in a Web Site Hosted in Azure>和<將 ASP.NET Web 應用程式部署至 Azure 網站>。

另請參閱

本文對您有任何幫助嗎?
(剩餘 1500 個字元)
感謝您提供意見
Microsoft 正展開一份線上問卷調查,了解您對於 MSDN 網站的看法。 如果您選擇參加,您離開 MSDN 網站時即會顯示線上問卷調查。

您是否想要參加?
顯示:
© 2014 Microsoft