Visual Basic .NET で .NET データ プロバイダー SQL Server使用してSQL Server データベースを開く
この記事では、Visual Basic .NET で .NET データ プロバイダー SQL Server使用してSQL Server データベースを開く方法について説明します。
元の製品バージョン: Visual Basic .NET
元の KB 番号: 308656
概要
この記事では、ADO.NET を使用して、SQL Server .NET データ プロバイダーを使用してSQL Server データベースを開く方法について説明します。 ADO.NET は、データ処理に必要なすべてのクラスを収集します。 名前空間はSystem.Data.SqlClient
、SQL Server データ ソースにプログラムでアクセスするために使用されるクラスのコレクションを記述します。 名前空間を介して ADO クラスにアクセスして、 System.Data.OleDb
OLE DB データベースをサポートできます。
この記事では、プログラムと Visual Studio .NET Server エクスプローラーを使用して接続を設定します。 この記事のコード サンプルでは、 オブジェクトSqlCommand
、SqlConnection
、および ADO.NET オブジェクトをSqlDataReader
使用します。
要件
次の一覧では、必要なハードウェア、ソフトウェア、ネットワーク インフラストラクチャ、およびサービス パックの概要を示します。
- Microsoft SQL Server
- Visual Basic .NET
注:
SQL Serverと Visual Basic .NET を同じコンピューターにインストールして実行する必要があります。 さらに、ユーザーは Windows 統合セキュリティを使用してSQL Serverに接続できる必要があります。
この記事では、次のトピックについて理解していることを前提としています。
- ADO.NET の概念
- SQL Server概念と Transact-SQL (T-SQL) 構文
- Northwind サンプル データベース
Visual Basic .NET Windows アプリケーションを作成する
Visual Studio .NET を起動し、 SQLDataAccess という名前の新しい Visual Basic Windows アプリケーション プロジェクトを作成します。
Form1 を開きます。 Form1.vbの最初の行で、次のように ADO.NET 名前空間への参照を追加します。
Imports System.Data.SqlClient
[Windows スタート] メニューの [プログラム] をポイントし、[Microsoft SQL Server] をポイントし、[SQL Server Service Manager] をクリックして、コンピューターでSQL Server サービスが実行されていることを確認します。
Server プロパティをコンピューターの名前に設定し、Services プロパティを MSSQLServer に設定します。
サービスが実行されていない場合は、[ 開始] をクリックします。
[SQL Server Service Manager] ダイアログ ボックスを閉じます。
ADO.NET オブジェクトを作成する
クラスを Form1
次のように変更します。
Public Class Form1
Inherits System.Windows.Forms.Form
'Create ADO.NET objects.
Private myConn As SqlConnection
Private myCmd As SqlCommand
Private myReader As SqlDataReader
Private results As String
オブジェクトは SqlConnection
データベース接続を確立し、オブジェクトはデータベースに SqlCommand
対してクエリを実行し、オブジェクトは SqlDataReader
クエリの結果を取得します。
SqlConnection オブジェクトを使用して接続SQL Server開く
オブジェクトの接続文字列を
SqlConnection
設定するには、イベント プロシージャに次のコードをForm1_Load
追加します。'Create a Connection object. myConn = New SqlConnection("Initial Catalog=Northwind;" & _ "Data Source=localhost;Integrated Security=SSPI;")
SQL クエリを
Command
含む オブジェクトを設定するには、イベント プロシージャに次のコードをForm1_Load
追加します。'Create a Command object. myCmd = myConn.CreateCommand myCmd.CommandText = "SELECT FirstName, LastName FROM Employees" 'Open the connection. myConn.Open()
SqlConnection
では、Windows ログオンの詳細を使用して、コンピューター上の Northwind データベースに接続します。
SqlDataReader オブジェクトを使用して、SQL Serverからデータを取得する
イベント プロシージャに次のコードを
Form1_Load
追加します。myReader = myCmd.ExecuteReader()
メソッドが
myCmd.ExecuteReader
実行されると、SqlCommand
テーブルから 2 つのフィールドをEmployees
取得し、オブジェクトをSqlDataReader
作成します。クエリ結果を表示するには、イベント プロシージャに次のコードを
Form1_Load
追加します。'Concatenate the query result into a string. Do While myReader.Read() results = results & myReader.GetString(0) & vbTab & _ myReader.GetString(1) & vbLf Loop 'Display results. MsgBox(results)
メソッドは
myReader.Read
ブール値を返します。これは、読み取るレコードが増えるかどうかを示します。 SQL クエリの結果がメッセージ ボックスに表示されます。オブジェクトと
SqlConnection
オブジェクトをSqlDataReader
閉じるには、イベント プロシージャに次のコードをForm1_Load
追加します。'Close the reader and the database connection. myReader.Close() myConn.Close()
プロジェクトを保存して実行します。
サーバー エクスプローラーでデータベースを表示する
- [表示] メニューの [サーバー エクスプローラー] をクリックします。
- [データ Connections] を右クリックし、[接続の追加] をクリックします。
- [ データ リンクのプロパティ ] ダイアログ ボックスで、[ サーバー名の選択または入力 ] ボックスの [localhost] をクリックします。
- [統合セキュリティWindows NTクリックして、サーバーにログオンします。
- [ サーバー上のデータベースの選択] をクリックし、一覧から [Northwind データベース] を選択します。
- [ 接続のテスト ] をクリックして接続を検証し、[OK] をクリック します。
- [サーバー エクスプローラー] で、[データ Connections] ツリーをクリックして展開し、テーブル ノードが
Employees
展開されるようにします。 個々のフィールドのプロパティが [ プロパティ ] ウィンドウに表示されます。
サーバー エクスプローラーを使用して接続SQL Server開く
デザイン ビューで Form1 を表示します。
Server エクスプローラー のテーブルから
Employees
FirstName データベース フィールドと LastName データベース フィールドをドラッグし、これらのフィールドを Form1 にドロップします。SqlConnection
およびSqlDataAdapter
オブジェクトはフォームに作成されます。[ 表示 ] メニューの [ ツールボックス] をクリックします。
[ データ ] タブで
DataSet
、オブジェクト (DataSet1) をドラッグし、フォームにドロップします。[ データセットの追加 ] ダイアログ ボックスで、[ 型指定されていないデータセット] をクリックし、[OK] をクリック します。
イベント プロシージャで オブジェクトと
Connection
オブジェクトがDataReader
閉じられる前に、コード行をForm1_Load
挿入します。 プロシージャの最後は次のように表示されます。SqlDataAdapter1.Fill(DataSet1, "Employees") myReader.Close() myConn.Close()
ツールボックスの [ ウィンドウ フォーム ] タブで、DataGrid コントロールをドラッグし、Form1 にドロップします。
DataGrid を前に作成した
DataSet
オブジェクトにバインドするには、コード行の前のイベント プロシージャにForm1_Load
次のコードをmyReader.close()
追加します。DataGrid1.SetDataBinding(DataSet1, "Employees")
プロジェクトを保存して実行します。
関連情報
ADO.NET の使用の詳細については、Visual Studio .NET ヘルプ ドキュメントの Visual Basic トピックの「データ」セクションを参照してください。
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示