Freigeben über


Öffnen der SQL Server-Datenbank mithilfe von SQL Server .NET-Datenanbieter mit Visual Basic .NET

Dieser Artikel enthält Informationen zum Öffnen von SQL Server-Datenbanken mithilfe von SQL Server .NET-Datenanbieter mit Visual Basic .NET.

Originalproduktversion: Visual Basic .NET
Ursprüngliche KB-Nummer: 308656

Zusammenfassung

In diesem Artikel wird beschrieben, wie Sie ADO.NET verwenden können, um eine SQL Server-Datenbank mithilfe des SQL Server .NET-Datenanbieters zu öffnen. ADO.NET sammelt alle Klassen, die für die Datenverarbeitung erforderlich sind. Der System.Data.SqlClient Namespace beschreibt eine Auflistung von Klassen, die für den programmgesteuerten Zugriff auf eine SQL Server-Datenquelle verwendet werden. Sie können über den System.Data.OleDb Namespace auf ADO-Klassen zugreifen, um Unterstützung für OLE DB-Datenbanken bereitzustellen.

In diesem Artikel werden Verbindungen sowohl programmgesteuert als auch mit dem Visual Studio .NET Server-Explorer eingerichtet. In den Codebeispielen in diesem Artikel werden die SqlConnectionObjekte , SqlCommandund SqlDataReader ADO.NET verwendet.

Anforderungen

In der folgenden Liste sind die erforderlichen Hardware-, Software-, Netzwerkinfrastruktur- und Service Packs aufgeführt, die Sie benötigen:

  • Microsoft SQL Server
  • Visual Basic .NET

Notiz

SQL Server und Visual Basic .NET müssen auf demselben Computer installiert und ausgeführt werden. Darüber hinaus muss der Benutzer windows Integrated Security verwenden können, um eine Verbindung mit SQL Server herzustellen.

In diesem Artikel wird davon ausgegangen, dass Sie mit den folgenden Themen vertraut sind:

  • ADO.NET Konzepte
  • SQL Server-Konzepte und Transact-SQL -Syntax (T-SQL)
  • Northwind-Beispieldatenbank

Erstellen einer .NET-Windows-Anwendung für Visual Basic

  1. Starten Sie Visual Studio .NET, und erstellen Sie ein neues Visual Basic Windows Application-Projekt namens SQLDataAccess.

  2. Öffnen Sie Formular1. Fügen Sie in der ersten Zeile von Form1.vb einen Verweis auf den ADO.NET Namespace wie folgt hinzu:

    Imports System.Data.SqlClient
    
  3. Zeigen Sie im Windows-Startmenü auf "Programme", zeigen Sie auf Microsoft SQL Server, und klicken Sie dann auf SQL Server Service Manager, um sicherzustellen, dass der SQL Server-Dienst auf Ihrem Computer ausgeführt wird.

  4. Legen Sie die Server-Eigenschaft auf den Namen Ihres Computers fest, und legen Sie dann die Services-Eigenschaft auf MSSQLServer fest.

  5. Wenn der Dienst nicht ausgeführt wird, klicken Sie auf "Start".

  6. Schließen Sie das Dialogfeld SQL Server Service Manager .

Erstellen ADO.NET Objekte

Ändern Sie die Form1 Klasse wie folgt:

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

Das SqlConnection Objekt stellt eine Datenbankverbindung her, das SqlCommand Objekt führt eine Abfrage für die Datenbank aus, und das SqlDataReader Objekt ruft die Ergebnisse der Abfrage ab.

Verwenden des SqlConnection-Objekts zum Öffnen der SQL Server-Verbindung

  1. Um die Verbindungszeichenfolge des SqlConnection Objekts einzurichten, fügen Sie der Ereignisprozedur den folgenden Code hinzuForm1_Load:

     'Create a Connection object.
     myConn = New SqlConnection("Initial Catalog=Northwind;" & _
     "Data Source=localhost;Integrated Security=SSPI;")
    
  2. Um das Command Objekt einzurichten, das die SQL-Abfrage enthält, fügen Sie der Ereignisprozedur den folgenden Code hinzu Form1_Load :

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

SqlConnection verwendet Ihre Windows-Anmeldedetails, um eine Verbindung mit der Northwind-Datenbank auf Ihrem Computer herzustellen.

Verwenden des SqlDataReader-Objekts zum Abrufen von Daten aus SQL Server

  1. Fügen Sie den folgenden Code zur Form1_Load-Ereignisprozedur hinzu:

    myReader = myCmd.ExecuteReader()
    
  2. Wenn die myCmd.ExecuteReader Methode ausgeführt wird, SqlCommand werden zwei Felder aus der Employees Tabelle abgerufen und ein SqlDataReader Objekt erstellt.

  3. Um die Abfrageergebnisse anzuzeigen, fügen Sie der Ereignisprozedur den folgenden Code hinzu 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)
    

    Die myReader.Read Methode gibt einen booleschen Wert zurück, der angibt, ob weitere Zu lesende Datensätze vorhanden sind. Die Ergebnisse der SQL-Abfrage werden in einem Meldungsfeld angezeigt.

  4. Um die SqlDataReader Objekte SqlConnection zu schließen, fügen Sie der Ereignisprozedur den folgenden Code hinzu Form1_Load :

    'Close the reader and the database connection.
     myReader.Close()
     myConn.Close()
    
  5. Speichern sie das Projekt, und führen Sie es aus.

Datenbank im Server-Explorer anzeigen

  1. Klicken Sie im Menü "Ansicht" auf "Server-Explorer".
  2. Klicken Sie mit der rechten Maustaste auf "Datenverbindungen", und klicken Sie dann auf " Verbindung hinzufügen".
  3. Klicken Sie im Dialogfeld "Datenlinkeigenschaften" im Feld "Auswählen" auf "localhost", oder geben Sie ein Servernamenfeld ein.
  4. Klicken Sie auf Die integrierte Windows NT-Sicherheit , um sich beim Server anzumelden.
  5. Klicken Sie auf "Datenbank auswählen" auf dem Server, und wählen Sie dann "Northwind "-Datenbank aus der Liste aus.
  6. Klicken Sie auf " Verbindung testen" , um die Verbindung zu überprüfen, und klicken Sie dann auf "OK".
  7. Klicken Sie im Server-Explorer, um die Datenverbindungen-Struktur so zu erweitern, dass der Employees Tabellenknoten erweitert wird. Die Eigenschaften einzelner Felder werden im Eigenschaftenfenster angezeigt.

Verwenden des Server-Explorers zum Öffnen der SQL Server-Verbindung

  1. Formular1 in der Entwurfsansicht anzeigen.

  2. Ziehen Sie die Datenbankfelder "Vorname" und "Nachname" aus Employees der Tabelle im Server-Explorer, und legen Sie diese Felder in Form1 ab. A SqlConnection und SqlDataAdapter Objekt werden im Formular erstellt.

  3. Klicken Sie im Menü "Ansicht" auf " Toolbox".

  4. Ziehen Sie auf der Registerkarte "Daten " ein DataSet Objekt (DataSet1), und legen Sie es auf das Formular ab.

  5. Klicken Sie im Dialogfeld "Dataset hinzufügen" auf "Nicht eingegebenes Dataset" und dann auf "OK".

  6. Fügen Sie eine Codezeile ein, bevor die DataReader Objekte Connection in der Form1_Load Ereignisprozedur geschlossen werden. Das Ende des Verfahrens sollte wie folgt angezeigt werden:

    SqlDataAdapter1.Fill(DataSet1, "Employees")
    myReader.Close()
    myConn.Close()
    
  7. Ziehen Sie auf der Registerkarte "Fensterformulare " der Toolbox ein DataGrid-Steuerelement, und legen Sie es auf Form1 ab.

  8. Um das DataGrid an das DataSet Objekt zu binden, das Sie zuvor erstellt haben, fügen Sie der Ereignisprozedur vor der myReader.close() Form1_Load Codezeile den folgenden Code hinzu:

    DataGrid1.SetDataBinding(DataSet1, "Employees")
    
  9. Speichern sie das Projekt, und führen Sie es aus.

References

Weitere Informationen zur Verwendung von ADO.NET finden Sie im Abschnitt "Daten " des Visual Basic-Themas in der Visual Studio .NET-Hilfedokumentation.