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 エクスプローラーを使用して接続を設定します。 この記事のコード サンプルでは、 オブジェクトSqlCommandSqlConnection、および 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 アプリケーションを作成する

  1. Visual Studio .NET を起動し、 SQLDataAccess という名前の新しい Visual Basic Windows アプリケーション プロジェクトを作成します。

  2. Form1 を開きます。 Form1.vbの最初の行で、次のように ADO.NET 名前空間への参照を追加します。

    Imports System.Data.SqlClient
    
  3. [Windows スタート] メニューの [プログラム] をポイントし、[Microsoft SQL Server] をポイントし、[SQL Server Service Manager] をクリックして、コンピューターでSQL Server サービスが実行されていることを確認します。

  4. Server プロパティをコンピューターの名前に設定し、Services プロパティを MSSQLServer に設定します。

  5. サービスが実行されていない場合は、[ 開始] をクリックします。

  6. [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開く

  1. オブジェクトの接続文字列をSqlConnection設定するには、イベント プロシージャに次のコードをForm1_Load追加します。

     'Create a Connection object.
     myConn = New SqlConnection("Initial Catalog=Northwind;" & _
     "Data Source=localhost;Integrated Security=SSPI;")
    
  2. 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からデータを取得する

  1. イベント プロシージャに次のコードを Form1_Load 追加します。

    myReader = myCmd.ExecuteReader()
    
  2. メソッドが myCmd.ExecuteReader 実行されると、 SqlCommand テーブルから 2 つのフィールドを Employees 取得し、オブジェクトを SqlDataReader 作成します。

  3. クエリ結果を表示するには、イベント プロシージャに次のコードを 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 クエリの結果がメッセージ ボックスに表示されます。

  4. オブジェクトと SqlConnection オブジェクトをSqlDataReader閉じるには、イベント プロシージャに次のコードをForm1_Load追加します。

    'Close the reader and the database connection.
     myReader.Close()
     myConn.Close()
    
  5. プロジェクトを保存して実行します。

サーバー エクスプローラーでデータベースを表示する

  1. [表示] メニューの [サーバー エクスプローラー] をクリックします。
  2. [データ Connections] を右クリックし、[接続の追加] をクリックします。
  3. [ データ リンクのプロパティ ] ダイアログ ボックスで、[ サーバー名の選択または入力 ] ボックスの [localhost] をクリックします。
  4. [統合セキュリティWindows NTクリックして、サーバーにログオンします。
  5. [ サーバー上のデータベースの選択] をクリックし、一覧から [Northwind データベース] を選択します。
  6. [ 接続のテスト ] をクリックして接続を検証し、[OK] をクリック します
  7. [サーバー エクスプローラー] で、[データ Connections] ツリーをクリックして展開し、テーブル ノードがEmployees展開されるようにします。 個々のフィールドのプロパティが [ プロパティ ] ウィンドウに表示されます。

サーバー エクスプローラーを使用して接続SQL Server開く

  1. デザイン ビューで Form1 を表示します。

  2. Server エクスプローラー のテーブルから EmployeesFirstName データベース フィールドと LastName データベース フィールドをドラッグし、これらのフィールドを Form1 にドロップします。 SqlConnectionおよび SqlDataAdapter オブジェクトはフォームに作成されます。

  3. [ 表示 ] メニューの [ ツールボックス] をクリックします。

  4. [ データ ] タブで DataSet 、オブジェクト (DataSet1) をドラッグし、フォームにドロップします。

  5. [ データセットの追加 ] ダイアログ ボックスで、[ 型指定されていないデータセット] をクリックし、[OK] をクリック します

  6. イベント プロシージャで オブジェクトと Connection オブジェクトがDataReader閉じられる前に、コード行をForm1_Load挿入します。 プロシージャの最後は次のように表示されます。

    SqlDataAdapter1.Fill(DataSet1, "Employees")
    myReader.Close()
    myConn.Close()
    
  7. ツールボックスの [ ウィンドウ フォーム ] タブで、DataGrid コントロールをドラッグし、Form1 にドロップします。

  8. DataGrid を前に作成した DataSet オブジェクトにバインドするには、コード行の前のイベント プロシージャに Form1_Load 次のコードを myReader.close() 追加します。

    DataGrid1.SetDataBinding(DataSet1, "Employees")
    
  9. プロジェクトを保存して実行します。

関連情報

ADO.NET の使用の詳細については、Visual Studio .NET ヘルプ ドキュメントの Visual Basic トピックの「データ」セクションを参照してください。