Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
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 SqlConnection
Objekte , SqlCommand
und 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
Starten Sie Visual Studio .NET, und erstellen Sie ein neues Visual Basic Windows Application-Projekt namens SQLDataAccess.
Ö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
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.
Legen Sie die Server-Eigenschaft auf den Namen Ihres Computers fest, und legen Sie dann die Services-Eigenschaft auf MSSQLServer fest.
Wenn der Dienst nicht ausgeführt wird, klicken Sie auf "Start".
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
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;")
Um das
Command
Objekt einzurichten, das die SQL-Abfrage enthält, fügen Sie der Ereignisprozedur den folgenden Code hinzuForm1_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
Fügen Sie den folgenden Code zur
Form1_Load
-Ereignisprozedur hinzu:myReader = myCmd.ExecuteReader()
Wenn die
myCmd.ExecuteReader
Methode ausgeführt wird,SqlCommand
werden zwei Felder aus derEmployees
Tabelle abgerufen und einSqlDataReader
Objekt erstellt.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.Um die
SqlDataReader
ObjekteSqlConnection
zu schließen, fügen Sie der Ereignisprozedur den folgenden Code hinzuForm1_Load
:'Close the reader and the database connection. myReader.Close() myConn.Close()
Speichern sie das Projekt, und führen Sie es aus.
Datenbank im Server-Explorer anzeigen
- Klicken Sie im Menü "Ansicht" auf "Server-Explorer".
- Klicken Sie mit der rechten Maustaste auf "Datenverbindungen", und klicken Sie dann auf " Verbindung hinzufügen".
- Klicken Sie im Dialogfeld "Datenlinkeigenschaften" im Feld "Auswählen" auf "localhost", oder geben Sie ein Servernamenfeld ein.
- Klicken Sie auf Die integrierte Windows NT-Sicherheit , um sich beim Server anzumelden.
- Klicken Sie auf "Datenbank auswählen" auf dem Server, und wählen Sie dann "Northwind "-Datenbank aus der Liste aus.
- Klicken Sie auf " Verbindung testen" , um die Verbindung zu überprüfen, und klicken Sie dann auf "OK".
- 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
Formular1 in der Entwurfsansicht anzeigen.
Ziehen Sie die Datenbankfelder "Vorname" und "Nachname" aus
Employees
der Tabelle im Server-Explorer, und legen Sie diese Felder in Form1 ab. ASqlConnection
undSqlDataAdapter
Objekt werden im Formular erstellt.Klicken Sie im Menü "Ansicht" auf " Toolbox".
Ziehen Sie auf der Registerkarte "Daten " ein
DataSet
Objekt (DataSet1), und legen Sie es auf das Formular ab.Klicken Sie im Dialogfeld "Dataset hinzufügen" auf "Nicht eingegebenes Dataset" und dann auf "OK".
Fügen Sie eine Codezeile ein, bevor die
DataReader
ObjekteConnection
in derForm1_Load
Ereignisprozedur geschlossen werden. Das Ende des Verfahrens sollte wie folgt angezeigt werden:SqlDataAdapter1.Fill(DataSet1, "Employees") myReader.Close() myConn.Close()
Ziehen Sie auf der Registerkarte "Fensterformulare " der Toolbox ein DataGrid-Steuerelement, und legen Sie es auf Form1 ab.
Um das DataGrid an das
DataSet
Objekt zu binden, das Sie zuvor erstellt haben, fügen Sie der Ereignisprozedur vor dermyReader.close()
Form1_Load
Codezeile den folgenden Code hinzu:DataGrid1.SetDataBinding(DataSet1, "Employees")
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.