Dela via


Öppna SQL Server databas med hjälp av SQL Server .NET-dataprovider med Visual Basic .NET

Den här artikeln innehåller information om hur du öppnar SQL Server databaser med hjälp av SQL Server .NET-dataprovider med Visual Basic .NET.

Ursprunglig produktversion: Visual Basic .NET
Ursprungligt KB-nummer: 308656

Sammanfattning

I den här artikeln beskrivs hur du kan använda ADO.NET för att öppna en SQL Server-databas med hjälp av SQL Server .NET-dataprovider. ADO.NET samlar in alla klasser som krävs för datahantering. Namnområdet System.Data.SqlClient beskriver en samling klasser som används för programmatisk åtkomst till en SQL Server datakälla. Du kan komma åt ADO-klasser via System.Data.OleDb namnområdet för att ge stöd för OLE DB-databaser.

I den här artikeln konfigureras anslutningar både programmässigt och med hjälp av Visual Studio .NET Server Explorer. Kodexemplen i den här artikeln använder objekten SqlConnection, SqlCommandoch SqlDataReader ADO.NET.

Krav

I följande lista beskrivs nödvändig maskinvara, programvara, nätverksinfrastruktur och servicepaket som du behöver:

  • Microsoft SQL Server
  • Visual Basic .NET

Obs!

SQL Server och Visual Basic .NET måste installeras och köras på samma dator. Dessutom måste användaren kunna använda Windows-integrerad säkerhet för att ansluta till SQL Server.

Den här artikeln förutsätter att du är bekant med följande ämnen:

  • ADO.NET begrepp
  • SQL Server begrepp och Transact-SQL-syntax (T-SQL)
  • Northwind-exempeldatabas

Skapa Visual Basic .NET Windows-program

  1. Starta Visual Studio .NET och skapa ett nytt Visual Basic Windows-programprojekt med namnet SQLDataAccess.

  2. Öppna Formulär1. På den första raden i Form1.vb lägger du till en referens till ADO.NET namnområde på följande sätt:

    Imports System.Data.SqlClient
    
  3. Från Start-menyn i Windows pekar du på Program, pekar på Microsoft SQL Server och klickar sedan på SQL Server Service Manager för att se till att SQL Server-tjänsten körs på datorn.

  4. Ange serveregenskapen till namnet på datorn och ange sedan egenskapen Services till MSSQLServer.

  5. Om tjänsten inte körs klickar du på Starta.

  6. Stäng dialogrutan SQL Server Service Manager.

Skapa ADO.NET objekt

Ändra klassen på Form1 följande sätt:

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

Objektet SqlConnection upprättar en databasanslutning, SqlCommand objektet kör en fråga mot databasen och SqlDataReader objektet hämtar resultatet av frågan.

Använd SqlConnection-objektet för att öppna SQL Server anslutning

  1. Om du vill konfigurera objektets anslutningssträng SqlConnection lägger du till följande kod i händelseprocedurenForm1_Load:

     'Create a Connection object.
     myConn = New SqlConnection("Initial Catalog=Northwind;" & _
     "Data Source=localhost;Integrated Security=SSPI;")
    
  2. Om du vill konfigurera Command objektet, som innehåller SQL-frågan, lägger du till följande kod i händelseproceduren Form1_Load :

    'Create a Command object.
    myCmd = myConn.CreateCommand
    myCmd.CommandText = "SELECT FirstName, LastName FROM Employees"
    
    'Open the connection.
    myConn.Open()
    

SqlConnection använder din Inloggningsinformation för Windows för att ansluta till Northwind-databasen på datorn.

Använd SqlDataReader-objektet för att hämta data från SQL Server

  1. Lägg till följande kod i händelseproceduren Form1_Load :

    myReader = myCmd.ExecuteReader()
    
  2. myCmd.ExecuteReader När metoden körs SqlCommand hämtar två fält från Employees tabellen och skapar ett SqlDataReader -objekt.

  3. Om du vill visa frågeresultatet lägger du till följande kod i händelseproceduren 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)
    

    Metoden myReader.Read returnerar ett booleskt värde, vilket anger om det finns fler poster att läsa. Resultatet av SQL-frågan visas i en meddelanderuta.

  4. Om du vill stänga objekten SqlDataReader och SqlConnection lägger du till följande kod i händelseproceduren Form1_Load :

    'Close the reader and the database connection.
     myReader.Close()
     myConn.Close()
    
  5. Spara och kör projektet.

Visa databas i Server Explorer

  1. På menyn Visa klickar du på ServerUtforskaren.
  2. Högerklicka på Data Connections och klicka sedan på Lägg till anslutning.
  3. I dialogrutan Egenskaper för datalänk klickar du på localhost i rutan Välj eller ange ett servernamn .
  4. Klicka på Windows NT Integrated Security för att logga in på servern.
  5. Klicka på Välj databasen på servern och välj sedan Northwind-databas i listan.
  6. Klicka på Testa anslutning för att verifiera anslutningen och klicka sedan på OK.
  7. I ServerUtforskaren klickar du för att expandera trädet Data Connections så att tabellnoden Employees expanderas. Egenskaperna för enskilda fält visas i fönstret Egenskaper .

Använd Server Explorer för att öppna SQL Server anslutning

  1. Visa Formulär1 i designvyn.

  2. Dra databasfälten FirstName och LastName från Employees tabellen i Server Explorer och släpp dessa fält till Form1. Ett SqlConnection -objekt och SqlDataAdapter -objekt skapas i formuläret.

  3. I menyn Visa klickar du på Verktygslåda.

  4. Dra ett DataSet objekt (DataSet1) på fliken Data och släpp det i formuläret.

  5. I dialogrutan Lägg till datauppsättning klickar du på Otypad datauppsättning och sedan på OK.

  6. Infoga en kodrad innan objekten DataReader och Connection stängs i händelseproceduren Form1_Load . Slutet av proceduren bör se ut så här:

    SqlDataAdapter1.Fill(DataSet1, "Employees")
    myReader.Close()
    myConn.Close()
    
  7. Dra en DataGrid-kontroll på fliken Fönsterformulär i verktygslådan och släpp den på Formulär1.

  8. Om du vill binda DataGrid till objektet DataSet som du skapade tidigare lägger du till följande kod i händelseproceduren Form1_Load före kodraden myReader.close() :

    DataGrid1.SetDataBinding(DataSet1, "Employees")
    
  9. Spara och kör projektet.

Referenser

Mer information om hur du använder ADO.NET finns i avsnittet Data i Visual Basic i visual studio .NET-hjälpdokumentationen.