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 Microsoft SQL Server usando il provider di dati .NET di SQL Server insieme a Visual Basic .NET. È possibile 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 SqlConnectionoggetti , SqlCommande SqlDataReader ADO.NET.

Si applica a: Visual Basic .NET

Numero KB originale: 308656

Prerequisiti

  • 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

  1. In Visual Studio .NET creare un progetto applicazione Windows visual Basic e denominarlo SQLDataAccess.

  2. Aprire Form1.

  3. Nella prima riga di Form1.vb aggiungere un riferimento allo spazio dei nomi ADO.NET, come indicato di seguito:

    Imports System.Data.SqlClient
    
  4. Per assicurarsi che il servizio SQL Server sia in esecuzione nel computer, selezionare Start, Programmi, Microsoft SQL Server e quindi Sql Server Service Manager.

  5. Impostare la proprietà Server sul nome del computer e quindi impostare la proprietà Services su MSSQLServer.

  6. Se il servizio non è in esecuzione, selezionare Avvia.

  7. 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

  1. Per configurare la stringa di connessione dell'oggettoSqlConnection, aggiungere il codice seguente alla Form1_Load routine evento:

     'Create a Connection object.
     myConn = New SqlConnection("Initial Catalog=Northwind;" & _
     "Data Source=localhost;Integrated Security=SSPI;")
    
  2. Per configurare l'oggetto Command contenente la query SQL, aggiungere il codice seguente alla Form1_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

  1. Aggiungere il codice seguente alla routine evento Form1_Load:

    myReader = myCmd.ExecuteReader()
    

Quando il myCmd.ExecuteReader metodo viene eseguito, SqlCommand recupera due campi dalla Employees tabella e crea un SqlDataReader oggetto .

  1. 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.

  1. Per chiudere gli SqlDataReader oggetti e SqlConnection , aggiungere il codice seguente alla Form1_Load routine evento:

    'Close the reader and the database connection.
     myReader.Close()
     myConn.Close()
    
  2. Salvare ed eseguire il progetto.

Visualizzare il database in Esplora server

  1. Scegliere Esplora server dal menu Visualizza.
  2. Fare clic con il pulsante destro del mouse su Connessioni dati e quindi scegliere Aggiungi connessione.
  3. Nella finestra di dialogo Proprietà collegamento dati selezionare localhost nella casella Selezionare o immettere un nome server .
  4. Per accedere al server, selezionare Sicurezza integrata di Windows NT.
  5. Selezionare il database sul server e quindi selezionare il database Northwind nell'elenco.
  6. Per convalidare la connessione, selezionare Test connessione e quindi selezionare OK.
  7. Nel Server Explorer, selezionare per espandere l'albero delle Connessioni dati così che il nodo della tabella Employees si espanda. Le proprietà dei singoli campi vengono visualizzate nella finestra Proprietà .

Usare Esplora server per aprire la connessione a SQL Server

  1. Visualizzare Form1 nella visualizzazione Struttura.

  2. Nella tabella Employees di Esplora server, trascina e rilascia i campi del database FirstName e LastName su Form1. Questa azione crea oggetti SqlConnection e SqlDataAdapter sul modulo.

  3. Scegliere Casella degli strumenti dal menu Visualizza.

  4. Nella scheda Dati trascinare un DataSet oggetto (DataSet1) nel modulo.

  5. Nella finestra di dialogo Aggiungi set di dati selezionare Set di dati non tipizzato e quindi selezionare OK.

  6. Form1_Load Nella routine evento inserire una riga di codice prima che gli DataReader oggetti e Connection vengano chiusi per terminare la routine, come indicato di seguito:

    SqlDataAdapter1.Fill(DataSet1, "Employees")
    myReader.Close()
    myConn.Close()
    
  7. Nella scheda Window Forms della casella degli strumenti trascinare e rilasciare un controllo DataGrid in Form1.

  8. Form1_Load Nella routine evento aggiungere il codice seguente prima della myReader.close() riga per associare DataGrid all'oggetto DataSet creato in precedenza:

    DataGrid1.SetDataBinding(DataSet1, "Employees")
    
  9. Salvare ed eseguire il progetto.