Aprire il database di SQL Server usando SQL Server .NET provider di dati con Visual Basic .NET
Questo articolo fornisce informazioni su come aprire i database di SQL Server usando i provider di dati .NET di SQL Server con Visual Basic .NET.
Versione originale del prodotto: Visual Basic .NET
Numero KB originale: 308656
Riepilogo
Questo articolo descrive come usare ADO.NET per aprire un database di SQL Server usando il provider di dati .NET di SQL Server. ADO.NET raccoglie tutte le classi necessarie per la gestione dei dati. Lo System.Data.SqlClient
spazio dei nomi descrive una raccolta di classi usate per accedere a livello di codice a un'origine dati di SQL Server. È possibile accedere alle classi ADO tramite lo spazio dei System.Data.OleDb
nomi per fornire supporto per i database OLE DB.
In questo articolo le connessioni vengono configurate sia a livello di codice che tramite Esplora server .NET di Visual Studio. Gli esempi di codice in questo articolo usano gli SqlConnection
oggetti , SqlCommand
e SqlDataReader
ADO.NET.
Requisiti
L'elenco seguente illustra i Service Pack necessari per hardware, software, infrastruttura di rete e Service Pack necessari:
- Microsoft SQL Server
- Visual Basic .NET
Note
SQL Server e Visual Basic .NET devono essere installati e in esecuzione nello stesso computer. Inoltre, l'utente deve essere in grado di usare la sicurezza integrata di Windows per connettersi a SQL Server.
Questo articolo presuppone che si abbia familiarità con gli argomenti seguenti:
- concetti di ADO.NET
- Concetti di SQL Server e sintassi Transact-SQL (T-SQL)
- Database di esempio Northwind
Creare un'applicazione Windows .NET di Visual Basic
Avviare Visual Studio .NET e creare un nuovo progetto applicazione Windows di Visual Basic denominato SQLDataAccess.
Aprire Form1. Nella prima riga di Form1.vb aggiungere un riferimento allo spazio dei nomi ADO.NET come indicato di seguito:
Imports System.Data.SqlClient
Dal menu Start di Windows scegliere Programmi, Microsoft SQL Server, quindi fare clic su Gestione servizi SQL Server per assicurarsi che il servizio SQL Server sia in esecuzione nel computer.
Impostare la proprietà Server sul nome del computer e quindi impostare la proprietà Services su MSSQLServer.
Se il servizio non è in esecuzione, fare clic su Avvia.
Chiudere la finestra di dialogo Gestione servizi SQL Server.
Creare oggetti ADO.NET
Modificare la Form1
classe come segue:
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
L'oggetto SqlConnection
stabilisce una connessione di database, l'oggetto SqlCommand
esegue una query sul database e l'oggetto SqlDataReader
recupera i risultati della query.
Usare l'oggetto SqlConnection per aprire la connessione a SQL Server
Per configurare la stringa di connessione dell'oggetto
SqlConnection
, aggiungere il codice seguente allaForm1_Load
routine evento:'Create a Connection object. myConn = New SqlConnection("Initial Catalog=Northwind;" & _ "Data Source=localhost;Integrated Security=SSPI;")
Per configurare l'oggetto
Command
contenente la query SQL, aggiungere il codice seguente allaForm1_Load
routine evento:'Create a Command object. myCmd = myConn.CreateCommand myCmd.CommandText = "SELECT FirstName, LastName FROM Employees" 'Open the connection. myConn.Open()
SqlConnection
usa i dettagli di accesso di Windows per connettersi al database Northwind nel computer.
Usare l'oggetto SqlDataReader per recuperare dati da SQL Server
Aggiungere il codice seguente alla routine evento
Form1_Load
:myReader = myCmd.ExecuteReader()
Quando il
myCmd.ExecuteReader
metodo viene eseguito,SqlCommand
recupera due campi dallaEmployees
tabella e crea unSqlDataReader
oggetto .Per visualizzare i risultati della query, aggiungere il codice seguente alla
Form1_Load
routine evento:'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)
Il
myReader.Read
metodo restituisce un valore booleano, che indica se sono presenti più record da leggere. I risultati della query SQL vengono visualizzati in una finestra di messaggio.Per chiudere gli
SqlDataReader
oggetti eSqlConnection
, aggiungere il codice seguente allaForm1_Load
routine evento:'Close the reader and the database connection. myReader.Close() myConn.Close()
Salvare ed eseguire il progetto.
Visualizzare il database in Esplora server
- Scegliere Esplora server dal menu Visualizza .
- Fare clic con il pulsante destro del mouse su Connessioni dati, quindi scegliere Aggiungi connessione.
- Nella finestra di dialogo Proprietà collegamento dati fare clic su localhost nella casella Seleziona o immetti un nome server.
- Fare clic su Sicurezza integrata di Windows NT per accedere al server.
- Fare clic su Selezionare il database nel server e quindi selezionare Northwind database nell'elenco.
- Fare clic su Test connessione per convalidare la connessione e quindi fare clic su OK.
- In Esplora server fare clic per espandere l'albero Connessioni dati in modo che il nodo della
Employees
tabella venga espanso. Le proprietà dei singoli campi vengono visualizzate nella finestra Proprietà .
Usare Esplora server per aprire la connessione a SQL Server
Visualizzare Form1 nella visualizzazione Struttura.
Trascinare i campi del database FirstName e LastName dalla
Employees
tabella in Esplora server e rilasciare questi campi in Form1. Nel form vengono creati unSqlConnection
oggetto eSqlDataAdapter
.Scegliere Casella degli strumenti dal menu Visualizza.
Nella scheda Dati trascinare un
DataSet
oggetto (DataSet1) e rilasciarlo nel form.Nella finestra di dialogo Aggiungi set di dati fare clic su Set di dati non tipizzato e quindi su OK.
Inserire una riga di codice prima che gli
DataReader
oggetti eConnection
vengano chiusi nellaForm1_Load
routine evento. La fine della procedura dovrebbe essere visualizzata nel modo seguente:SqlDataAdapter1.Fill(DataSet1, "Employees") myReader.Close() myConn.Close()
Nella scheda Window Forms della casella degli strumenti trascinare un controllo DataGrid e rilasciarlo in Form1.
Per associare DataGrid all'oggetto
DataSet
creato in precedenza, aggiungere il codice seguente allaForm1_Load
routine evento prima dellamyReader.close()
riga di codice:DataGrid1.SetDataBinding(DataSet1, "Employees")
Salvare ed eseguire il progetto.
Riferimenti
Per altre informazioni sull'uso di ADO.NET, vedere la sezione Dati dell'argomento Visual Basic nella documentazione della Guida di Visual Studio .NET.