次の方法で共有


SQL Server のデータベースをデータソースにする方法

download.gifサンプル コードのダウンロード (aspnettips_SqlDataSource.msi, 253 KB)

※このサンプルをお使いいただくためには、Visual Studio 2005 が必要です。

ASP.NET 2.0 では、SqlDataSource コントロールを使って SQL Server のデータベースへ簡単にアクセスできます。

次のようなページを作成します(図1)。このページでは、AdventureWorks データベースにアクセスし、テーブルの内容を表示します。AdventureWorks データベースは、次のページからダウンロードすることができます。

AdventureWorks データベース:

https://msdn2.microsoft.com/en-us/library/ms144235.aspx 

 図

 図 1 今回作成するページ

今回は、次の手順でページを作成します。

  1. SqlDataSource コントロールの配置

  2. データソースの構成

  3. GridView コントロールの配置

  4. 実行

(1) SqlDataSource コントロールの配置

Web サイトのプロジェクトを新規に作成した後、Default.aspx のフォーム上に SqlDataSource コントロールを配置します(図2)。

 図

 図 2 SqlDataSource コントロール

(2) データソースの構成

SqlDataSource コントロール上のにある右三角形のボタンを押し、「SqlDataSource タスク」メニューを表示します。この中の「データ ソースの構成」を選択してください。「データ ソースの構成」ダイアログボックスが表示されます(図3)。

 図

 図 3 データ接続の選択

[新しい接続] ボタンを押すと、「接続の追加」ダイアログボックスが表示されます。データ ソースを「Microsoft SQL Server データーベースファイル」にします。データベース ファイル名に、AdventureWorks データベースの mdf ファイルを指定します。AdventureWorks データベースをデフォルトの設定でインストールした場合は、C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\AdventureWorks_Data.mdf になります(図4)。

 図

 図 4 接続の追加

[OK] ボタンを押して「データ ソースの構成」ダイアログボックスに戻って、[次へ] ボタンを押します。「アプリケーション構成ファイルに接続文字列を保存」画面が表示されますが、そのまま [次へ] ボタンを押します(図5)。

 図

 図 5 アプリケーション構成ファイルに接続文字列を保存

「Select ステートメントの構成」画面が表示されます。ここで、「カスタム SQL ステートメントまたはストアド プロシージャを指定する」を選択し、[次へ] ボタンを押します(図6)。

 図

 図 6 Select ステートメントの構成

カスタムステートメントを定義する画面で、SQL ステートメントとして SELECT 文を指定します。 「 SELECT * FROM [HumanResources].[Employee] 」と指定してください(図7)。

 図

 図 7 SELECT 文を指定

次に表示される「クエリのテスト」画面で、実際に DB からデータを取得できるかどうか確認できます(図8)。

 図

 図 8 クエリのテスト

[完了] ボタンを押して、データソースの構成を終了します。

(3) GridView コントロールの配置

実際にデータを表示させるのに、GridView コントロールを使います。Default.aspx のフォーム上に GridView コントロールを配置します(図9)。

 図

 図 9 GridView コントロール

「GridView タスク」メニューの「データ ソースの選択」項目で、先ほど作成した SqlDataSource1 を選択します(図10)。

 図

 図 10 データ ソースの選択

(4) 実行

実行してみます。ページを表示すると、AdventureWorks データベースの Employee テーブルの内容が表示されます(図11)。

images/SqlDataSource_fig11.gif

 

 図 11 Employee テーブルの表示

このように、SqlDataSource コントロールを使うことで、簡単に SQL Server のデータベースを扱うことができます。