Windows フォーム アプリケーションでのデータへの接続
Visual Studio には、データベース、Web サービス、オブジェクトなど、さまざまなソースのデータにアプリケーションを接続するツールが用意されています。 Visual Studio でデータ デザイン ツールを使用している場合は、フォームまたはコンポーネント用に接続オブジェクトを明示的に作成する必要はあまりありません。 通常、接続オブジェクトは、データ ウィザードの 1 つを完了するか、データ オブジェクトをフォームにドラッグすると作成されます。 データベース、Web サービス、またはオブジェクトのデータにアプリケーションを接続するには、[データ ソース] ウィンドウの [新しいデータ ソースの追加] を選択してデータ ソース構成ウィザードを実行します。
データをフェッチして Windows アプリケーションのフォームに表示するために TableAdapter クエリを実行し、データに接続するときの標準的な操作の流れを次に図に示します。
データ デザイン ツールを使用しないで接続オブジェクトを作成する方法が便利なときもあります。 プログラムで接続を作成する方法については、「データ ソースへの接続 (ADO.NET)」を参照してください。
注意
Web アプリケーションをデータに接続する方法については、「ASP.NET のデータ アクセス」を参照してください。
Windows フォーム アプリケーションをデータに接続するためのチュートリアル
Windows フォーム アプリケーションでのデータへの接続に関連するトピックを以下に示します。
トピック |
---|
接続の作成
Visual Studio を使用している場合は、[接続の追加] ダイアログ ボックスと [接続の変更] ダイアログ ボックス (一般) を使用して接続を構成します。 データ ウィザードの 1 つかサーバー エクスプローラーまたはデータベース エクスプローラーの中で接続の編集または作成を行うとき、または [プロパティ] ウィンドウで接続プロパティを編集するときに、[接続の追加] ダイアログ ボックスが表示されます。
次の操作のいずれかを実行すると、データ接続が自動的に構成されます。
アクション |
説明 |
---|---|
データ ソース構成ウィザードを実行する。 |
データ ソース構成ウィザードでデータベース パスを選択すると、接続が構成されます。 詳細については、「方法 : データベース内のデータに接続する」を参照してください。 |
TableAdapter 構成ウィザードを実行する。 |
TableAdapter 構成ウィザード内で接続が作成されます。 詳細については、「方法 : TableAdapter を作成する」を参照してください。 |
TableAdapter クエリの構成ウィザードを実行する。 |
TableAdapter クエリの構成ウィザード内で接続が作成されます。 詳細については、「方法 : TableAdapter クエリを作成する」を参照してください。 |
[データ ソース] ウィンドウからフォームまたはコンポーネント デザイナーに項目をドラッグする。 |
[データ ソース] ウィンドウから Windows フォーム デザイナーまたはコンポーネント デザイナーに項目をドラッグすると、接続オブジェクトが作成されます。 詳細については、「Visual Studio でのデータへのコントロールのバインド」を参照してください。 |
新しいデータ接続をサーバー エクスプローラーまたはデータベース エクスプローラーに追加する。 |
データ ウィザード内の利用可能な接続の一覧に、サーバー エクスプローラーまたはデータベース エクスプローラーのデータ接続が表示されます。 詳細については、「方法 : サーバー エクスプローラ/データベース エクスプローラで新しいデータ接続を追加します。」を参照してください。 |
接続文字列
接続文字列は、コンパイルされたアプリケーションまたはアプリケーション構成ファイルに格納できます。 詳細については、「方法: 接続文字列を保存および編集する」を参照してください。
接続情報とセキュリティ
接続を確立するときにはデータベースという重要なリソースにアクセスするため、多くの場合、接続の設定や操作に関してセキュリティ上の問題があります。
アプリケーション、およびアプリケーションからデータ ソースへのアクセスを保護する方法は、システムのアーキテクチャによって異なります。 たとえば、Web ベースのアプリケーションでは、ユーザーはインターネット インフォメーション サービス (IIS: Internet Information Services) に匿名でアクセスできるため、セキュリティ情報を提示しません。 この場合、アプリケーションは独自のログオン情報を保持しているので、(特定のユーザー情報ではなく) その情報を使用して接続を確立し、データベースにアクセスします。
セキュリティに関するメモ |
---|
接続文字列の詳細 (パスワードなど) を格納すると、アプリケーションのセキュリティに影響を及ぼすことがあります。 データベースへのアクセスを制御する方法としては、Windows 統合セキュリティを使用する方が安全です。 詳細については、「接続情報の保護 (ADO.NET)」を参照してください。 |
イントラネットまたは多階層アプリケーションでは、Windows、IIS、および SQL Server に用意されている統合セキュリティ オプションを利用できます。 このモデルでは、ローカル ネットワークに対するユーザーの認証情報がデータベース リソースへのアクセス時にも使用され、接続文字列に明示的なユーザー名やパスワードは使用されません。 通常、アクセス許可はデータベース サーバー コンピューター上でグループを使用して設定されるため、データベースにアクセスする可能性のあるすべてのユーザーに対して個別にアクセス許可を設定する必要はありません。 このモデルでは、接続に使用するログオン情報を格納する必要はなく、接続文字列情報を保護するための特別な手順も必要ありません。
セキュリティの詳細については、次のトピックを参照してください。
サーバー エクスプローラーまたはデータベース エクスプローラーでのデザイン時接続
サーバー エクスプローラーまたはデータベース エクスプローラーには、データ ソースへのデザイン時接続を作成する手段が用意されています。 サーバー エクスプローラーでは、使用可能なデータ ソースを参照し、データ ソースに含まれるテーブルや列などの要素に関する情報を表示し、データベース要素を編集および作成できます。
アプリケーションは、サーバー エクスプローラーまたはデータベース エクスプローラーで利用できる接続を直接使用しません。 これらの接続は、デザイン時にデータベースを操作するために Visual Studio で使用されます。 詳細については、「Visual Database Tools」を参照してください。
たとえば、デザイン時に、サーバー エクスプローラーまたはデータベース エクスプローラーを使用してデータベースへの接続を作成する場合があります。 後でフォームをデザインするときに、データベースを参照し、テーブルから列を選択してデータセット デザイナーにドラッグできます。 この操作で、データセットに TableAdapter が作成されます。 また、新しい接続オブジェクト (新しく作成された TableAdapter の一部) も作成されます。
デザイン時接続に関する情報は、プロジェクトやソリューションから独立して、ローカル コンピューター上に格納されます。 したがって、アプリケーションでの作業中にいったんデザイン時接続を確立すると、Visual Studio で作業するたびに (接続先のサーバーが使用可能である限り) サーバー エクスプローラーまたはデータベース エクスプローラーに常にその接続が表示されます。 サーバー エクスプローラーまたはデータベース エクスプローラーを使用する方法およびデザイン時接続を作成する方法の詳細については、「方法 : サーバー エクスプローラ/データベース エクスプローラで新しいデータ接続を追加します。」を参照してください。
参照
処理手順
チュートリアル: データベース内のデータへの接続 (Windows フォーム)
概念
Visual Studio でのデータへのコントロールのバインド