SQL Server Reporting Services(SSRS)徹底入門:基本概念からレポート作成まで
SQL Server 2005、2008、2008 R2の各ソフトウェアパッケージには、企業向けの専門的なレポート作成ソリューションである「SQL Server Reporting Services(SSRS)」が標準で同梱されています。SSRSを活用すれば、さまざまなデータソースから膨大な数のレポートを作成・公開・管理することができます。
SSRSの主要コンポーネント
SSRSは主に以下の3つのコンポーネントで構成されています。
- Report Server(レポートサーバー):メインのデータベースや各種コンポーネントを処理する中核となる部分です。
- Report Designer(レポートデザイナー):レポート作成のための主要な開発環境です。SQL Server および Business Intelligence Development Studio(BIDS)上の Visual Studio で動作します。
- Report Manager(レポートマネージャー):レポート、セキュリティ機能、データソースなどを一元管理する Web ベースの統合ツールです。
本記事では、AdventureWorks データベースをベースに、新しい SSRS プロジェクトの作成方法、共有データソースの設定、そして基本となるレポートの作成手順を解説します。
BIDSで新しいSSRSプロジェクトを作成する
まず「プロジェクト」という概念を理解しておきましょう。プロジェクトには、SSIS パッケージやレポートなど、BIDS 内のすべてのオブジェクトとコンポーネントが含まれ、それぞれ特定のカテゴリに基づいて分類されます。
スタートメニューから「プログラム」>「Microsoft SQL Server 2008」(2005など任意のバージョン)>「SQL Server Business Intelligence Development Studio」を選択します。続いて「ファイル」>「新規作成」>「プロジェクト」を選び、「ビジネスインテリジェンスプロジェクト」の一覧から「Report Server Project」を選択し、プロジェクト名を入力して「OK」をクリックします。

画像1:SQL Server Reporting Services の概要
これは「空の」プロジェクトです。つまり、まだ何も含まれていません。「ソリューションエクスプローラー」ボタンが表示されていない場合は、画面右側のタブから選択するか、「表示」>「ソリューションエクスプローラー」を選択してください。次のウィンドウに、プロジェクト名とそれに関連するすべてのコンポーネントやオブジェクトが表示されます。
共有データソースを作成する
SSRS のデータソースは、レポートに「埋め込む」ことも、プロジェクト内の複数のレポート間で「共有」することもできます。レポートの種類に応じて使い分けるのがポイントです。たとえば、データソースに変更が発生した場合や、データベース全体が別のサーバーへ移行された場合でも、共有データソースを1か所修正するだけで、数十、数百に及ぶ個別のレポートすべてへ反映させることができます。

画像2:SQL Server Reporting Services の概要
共有データソースを作成するには、「ソリューションエクスプローラー」ウィンドウ内で右クリックし、「Shared Data Sources」>「Add New Data Source」を選択します。データベースに名前を付けます(スペースは使用できません)。次に、一覧から適切なデータベースの種類(ここでは「SQL Server」)を選択し、「編集」をクリックして接続情報の詳細を入力します。「接続プロパティ」ウィンドウでサーバー名、認証情報、データベースを指定したら、「Test Connection」で接続を確認し、問題なければ「OK」をクリックします。
レポート作成の手順
「ソリューションエクスプローラー」で「Reports」を右クリックし、「Add New Report」を選択します。「Select the Data Source」画面では、前の手順で作成したデータソースを選びます。続いて「Design the Query」画面が表示され、クエリ文を直接入力するか、グラフィカルインターフェースで構築できる「Query Builder」機能を利用できます。今回は、以下のクエリを使用します。
SELECT P.Name,
ProductNumber,
Color,
ListPrice,
SC.Name [Category]
FROM Production.Product P
LEFT OUTER JOIN Production.ProductSubCategory SC
ON P.ProductSubCategoryID = SC.ProductSubCategoryID
WHERE P.ProductSubCategoryID IS NOT NULL
AND P.Color IS NOT NULL
ORDER BY Category, ListPrice ASC
「Select the Report Type」画面では「Tabular」を選択します。「Tabular」形式は、通常のスプレッドシート(またはデータベーステーブル)のような外観になり、ページ上部に列見出しが配置され、行数はデータセット内のデータ量に応じて変化します。「次へ」をクリックしましょう。
続く「Design the Table」画面では、「Color」と「Category」を「Group」セクションに追加し、残りのフィールドを「Details」セクションに追加して「次へ」をクリックします。
「Choose the Table Layout」では「Stepped」を選択したまま「次へ」へ進みます。次に、レポートテーブルのスタイルを選択して「次へ」。最後に名前(例:「Products By Category」)を付けて「完了」をクリックします。

画像3:SQL Server Reporting Services の概要
Designタブでのレポート編集
「Design」タブでは、さまざまな方法でレポートを編集できます。代表的な操作は以下のとおりです。
- ドラッグ&ドロップでレポート本体や各コンポーネントのサイズを変更する
- Toolbox ツールバーから画像などのオブジェクトを追加する
- 文字や数値の書式を設定する(対象を右クリックして「Text Box Properties」を選択)
- データ属性の追加、移動、削除、変更を行う
以上の基本情報は、SSRS の豊富な機能のごく入り口にすぎません。さらに詳しく学びたい方は、SQL Server Books Online やそのチュートリアル、Microsoft Press の Stacia Misner 氏による書籍、CodePlex などの公式リソースをぜひ参照してください。快適なレポート開発ライフをお過ごしください!
本記事は「SQL Server Reporting Services の概要」について TipsMake 編集チームがお届けしました。役立つ技術のコツやノウハウをお探しの方は、他のチップス記事もあわせてご覧ください。最後までお読みいただきありがとうございました。
Isabella Humphrey
2019年5月25日 更新
-
SQL Serverで外部キー制約を削除する方法【構文と実例付き】
この記事では、構文と具体例を交えながら、SQL Serverで外部キー(FOREIGN KEY)を削除する方法をわかりやすく解説します。 FOREIGN KEYを作成したものの、その外部キーが不要になり削除したい場合は、SQL Server(Transact-SQL)のALTER TABLEコマンドを使用することで簡単に削除できます。 SQL Serverで外部キーを削除する構文 ALTER TABLE ten_bang DROP CONSTRAINT fk_ten; パラメータの説明 ten_bang 外部キーが設定されているテーブルの名前です。 fk_ten 削除したい外部キー
-
SQL Serverのアーキテクチャを徹底解説|全般・メモリ・データファイル・ログファイルの仕組み
これまでの記事では、SQL Serverの概要やコンピューターへのインストール方法について学びました。本記事では、SQL Serverのアーキテクチャ(内部構造)について詳しく解説していきます。 理解しやすくするために、SQL Serverのアーキテクチャは以下の4つのセクションに分けて説明します。 全般アーキテクチャ(General) メモリアーキテクチャ(Memory) データファイルアーキテクチャ(Data file) ログファイルアーキテクチャ(Log file) それでは、それぞれのアーキテクチャの詳細を見ていきましょう。 全般アーキテクチャ(General) SQL Serve