Vous êtes actuellement hors ligne, en attente de reconnexion à Internet.

Votre navigateur n’est pas pris en charge

Vous devez mettre à jour votre navigateur pour utiliser le site.

Mettre à jour vers la dernière version d’Internet Explorer

COMMENT FAIRE : Ouvrir une base de données SQL Server à l'aide du fournisseur de données SQL Server .NET avec Visual Basic .NET

Cet article peut contenir des liens vers des informations en langue anglaise (pas encore traduites).
Résumé
Cet article explique comment vous pouvez utiliser ADO.NET pour ouvrir une base de données SQL Server à l'aide du fournisseur de données SQL Server .NET. ADO.NET regroupe toutes les classes qui sont nécessaires à la gestion des données. L'espace de noms System.Data.SqlClient décrit une collection de classes qui sont utilisées pour accéder par programme à une source de données SQL Server. Pour assurer la prise en charge des bases de données OLE DB, vous pouvez accéder aux classes ADO à l'aide de l'espace de noms System.Data.OleDb.

Dans cet article, les connexions sont définies par programme mais aussi à l'aide de l'Explorateur de serveurs Visual Studio .NET. Les exemples de code présentés dans cet article utilisent les objets ADO.NET SqlConnection, SqlCommand, et SqlDataReader.

Retour au début

Conditions requises

La liste suivante met en évidence le matériel, les logiciels, l'infrastructure réseau et les Service Packs recommandés dont vous avez besoin :
  • Microsoft SQL Server
  • Visual Basic .NET
REMARQUE : SQL Server et Visual Basic .NET doivent être installés et s'exécuter sur le même ordinateur. En outre, l'utilisateur doit pouvoir utiliser la sécurité intégrée de Windows pour se connecter à SQL Server.

Cet article suppose que vous maîtrisez les sujets suivants :
  • Les concepts ADO.NET
  • Les concepts SQL Server et la syntaxe Transact-SQL (T-SQL)
  • L'exemple de base de données Les Comptoirs
Retour au début

Création d'une application Windows Visual Basic .NET

  1. Démarrez Visual Studio .NET, puis créez un nouveau projet d'application Windows Visual Basic appelé SQLDataAccess.
  2. Ouvrez Form1. Dans la première ligne de Form1.vb, ajoutez une référence à l'espace de noms ADO.NET comme ci-dessous :
    Imports System.Data.SqlClient					
  3. Dans le menu Windows Démarrer, pointez sur Programmes, sur Microsoft SQL Server, puis cliquez sur Gestionnaire des services SQL Server pour vous assurer que le service SQL Server fonctionne sur votre ordinateur.
  4. Définissez la propriété Serveur sur le nom de votre ordinateur, et la propriété Services sur MSSQLServer.
  5. Si le service ne fonctionne pas, cliquez sur Démarrer.
  6. Fermez la boîte de dialogue Gestionnaire des services SQL Server.
Retour au début

Création d'objets ADO.NET

Modifiez la classe de Form1 comme suit :
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'objet SqlConnection établit une connexion à la base de données, l'objet SqlCommand exécute une requête sur la base de données, et l'objet SqlDataReader récupère les résultats de la requête.

Retour au début

Utilisation de l'objet SqlConnection pour ouvrir une connexion au serveur SQL

  1. Pour définir la chaîne de connexion de l'objet SqlConnection, ajoutez le code suivant à la procédure d'événement Form1_Load :
           'Create a Connection object.        myConn = New SqlConnection("Initial Catalog=Northwind;" & _                "Data Source=localhost;Integrated Security=SSPI;")        					
  2. Pour définir l'objet Command contenant la requête SQL, ajoutez le code suivant à la procédure d'événement Form1_Load :
           'Create a Command object.       myCmd = myConn.CreateCommand        myCmd.CommandText = "SELECT FirstName, LastName FROM Employees"            'Open the connection.        myConn.Open()					
SqlConnection utilise vos informations d'ouverture de session Windows pour se connecter à la base de données Les Comptoirs sur votre ordinateur.

Retour au début

Utilisation de l'objet SqlDataReader pour récupérer des données du serveur SQL

  1. Ajoutez le code suivant à la procédure d'événement Form1_Load :
    myReader = myCmd.ExecuteReader()					
  2. Lorsque la méthode myCmd.ExecuteReader est exécutée, SqlCommand récupère deux champs de la table Employés et crée un objet SqlDataReader.
  3. Pour afficher les résultats de la requête, ajoutez le code suivant à la procédure d'événement 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)						
    La méthode myReader.Read renvoie une valeur booléenne indiquant s'il reste d'autres enregistrements à lire. Les résultats de la requête SQL sont affichés dans une zone de message.
  4. Pour fermer les objets SqlDataReader et SqlConnection, ajoutez le code suivant à la procédure d'événement Form1_Load :
    'Close the reader and the database connection.        myReader.Close()        myConn.Close()					
  5. Enregistrez et exécutez le projet.
Retour au début

Affichage de la base de données dans l'Explorateur de serveurs

  1. Dans le menu Affichage, cliquez sur Explorateur de serveurs.
  2. Cliquez avec le bouton droit sur Connexions de données, puis cliquez sur Ajouter une connexion.
  3. Dans la boîte de dialogue Propriétés de liaison de données, cliquez sur localhost dans la zone Sélectionner ou entrer un nom de serveur.
  4. Cliquez sur Sécurité intégrée de Windows NT pour vous connecter au serveur.
  5. Cliquez sur Sélectionner la base de données sur le serveur, sélectionnez Base de données Les Comptoirs dans la liste.
  6. Cliquez sur Tester la connexion pour confirmer la connexion, puis cliquez sur OK.
  7. Dans l'Explorateur de serveurs, développez l'arborescence Connexions de données pour que le noeud Table Employés se développe. Les propriétés de chaque champ s'affichent dans la fenêtre Propriétés.
Retour au début

Utilisation de l'Explorateur de serveurs pour ouvrir une connexion au serveur SQL

  1. Affichez Form1 en mode Design.
  2. Glissez les champs de base de données Prénom et Nom de la Table Employés dans l'Explorateur de serveurs, et déplacez ces champs dans Form1. Un objet SqlConnection et un objet SqlDataAdapter sont créés dans le formulaire.
  3. Dans le menu Affichage, cliquez sur Boîte à outils.
  4. Sous l'onglet Données, glissez un objet DataSet (DataSet1), et déplacez-le dans le formulaire.
  5. Dans la boîte de dialogue Ajouter DataSet, cliquez sur DataSet non typé, puis cliquez sur OK.
  6. Insérez une ligne de code avant que les objets DataReader et Connexion ne ferment dans la procédure d'événement Form1_Load. La fin de la procédure devrait s'afficher comme ceci :
    SqlDataAdapter1.Fill(DataSet1, "Employees")        myReader.Close()        myConn.Close()					
  7. Sous l'onglet Formulaires Windows de la boîte à outils, glissez un contrôle DataGrid, et déplacez-le dans Form1.
  8. Pour lier DataGrid à DataSet que vous avez créé précédemment, ajoutez le code suivant à la procédure d'événement Form1_Load avant la fermeture de la ligne de code "myReader.close()" :
    DataGrid1.SetDataBinding(DataSet1, "Employees")					
  9. Enregistrez et exécutez le projet.
Retour au début
Références
Pour plus d'informations sur l'utilisation d'ADO.NET, reportez-vous à la section "Données" de la rubrique "Visual Basic" dans la documentation d'aide Visual Studio .NET.

Retour au début
Propriétés

ID d'article : 308656 - Dernière mise à jour : 11/04/2003 16:49:00 - Révision : 2.0

  • Microsoft ADO.NET (included with the .NET Framework)
  • Microsoft ADO.NET 1.1
  • Microsoft Visual Basic .NET 2002 Initiation
  • Microsoft Visual Basic .NET 2003 Initiation
  • kbhowtomaster kbsqlclient kbsystemdata KB308656
Commentaires
//c1.microsoft.com/c.gif?DI=4050&did=1&t=">='false';document.getElementsByTagName('head')[0].appendChild(m);" src="http://c1.microsoft.com/c.gif?"> >ow.location.protocol) + "//c.microsoft.com/ms.js'><\/script>"); &t=">