apprende HTML
ADO. NET Base de Données Sommaire Introduction 2 Les bases de donnée 2. 1 2. 2 Accéder à la base de 2. 3 Interface portable…. 2. 4 apprende HTML Premium gy Zaineb-Hmd I aoryaa 05, 2014 BS pages Base de données (ADO. NET) Sni* to View données orq5 . 20 4. 3 Les paramètres de commandes SQL . 4. 4 Les types de paramètres 25 4. 5 Créer un paramètre 4. 6 Les BLOBS.. 28 4. 7 Le DataReader 4. 8 Copier un grand nombre de PAGF 5 DataTable.. 33 5. 2. 3 Le DataRelation 34 14/09/08 5. 24 Fusionner deux DataSet 35 5. 2. 5 Copier un DataSet 5. Configurer une DataTable 36 5. 3. 1 5 Ajouter des données 0 5. 5. 2 Gérer des données 5. 5. 3 Les évènements d’une DataTable 5. 6 Le 42 5. 6. 1 Créer un DataView 5. 6. 2 Gérer un DataView 5. 7 Exemples… — 41 5 le chapitre. Bon cours . NET L’équipe ADO. NET. 2 Les bases de données 2. 1 Les fournisseurs de données Chaque fournisseur de données permet la communication avec un type de base de données au travers d’une API. Une API (Application Programming Interface) est Pinterface qui permet l’accès de logiciel par un autre.
Ces fournisseurs permettent de récupérer et de transférer des modifications entre rapplicatlon et une base de onnées. Toutes les classes permettant d’utiliser ces fournisseurs se trouvent dans l’espace de nom System. Data. Sur le Framework 3,5, il existe quatre types de fournisseurs : sql server n OLE DB OBDC C] Oracle 4 Chaque fournisseur est relié à une base de données propre, c’est- à-dire qu’il est compatible PAGF s 5 de nom System. Data. Odbc, chaque nom de ces classes est préfixé par Odbc.
Tout comme l’OLE DB, ODBC exige Pinstallation de MDAC. Il fonctionne avec le même principe qu’OLE DB mais au lieu d’utiliser une couche logicielle, il utilise le pilote ODBC. Oracle Les classes de ce fournisseur se trouvent dans respace de nom System. Data. OracleClient, chaque nom de ces classes est préfixé par Oracle. II permet simplement de se connecter à une source de données Oracle. Remarque : SQL Sender et Oracle sont tout deux des fournisseurs de données managés. Cest-à-dire qu’ils sont optimisés pour certains types de bases de données. Afin que l’accès aux données soit sûr, les fournisseurs de données doivent être disponibles sur le poste de travail. La méthode GetFactoryClasses de la classe DbProvlderFactories permet de donner les fournisseurs isponibles sur le poste de travail en questlon. Il faut, par contre, ajouter l’espace de nom System. Data. Common. Par exemple : Imports System. Data; Imports System. Data. Com 6 5 DbProviderFactories. GetFactoryClasses(); foreach (DataColumn colonne in listeFournisseur. Columns) Console.
Write(colonne. ColumnName + ‘Vt »); //Affiche le nom des colonnes Console. WriteLine(« /n/n »); foreach (DataRow ligne in listeFournisseur. Rows) //Affiche chaque ligne // Affiche les cellules Console. Write(ligne[colonne. ColumnName] + « /t »); //Retour à la ligne Console. Read(); Vous devriez avoir un résultat semblable ? 2. 2 Accéder à la base de données Pour dialoguer avec la base de données, tous ces fournisseurs implémentent six classes de bases : Classe Description 7 5 interfaces qu’elles implémentent.
En effet, les classes spécifiques aux fournisseurs permettront juste d’établir la connexion, on pourra ensuite utiliser que ces interfaces. Les six classes données dans le tableau précédent implémentent leurs interfaces respectives • Interface IDataAdapter permet de remplir et actuallser un objet DataSet et de mettre à jour une source de IDataReader Permet de lire un ou plusieurs flux de onnées en lecture seule à la suite de l’exécution d’une commande. IDataParameter Permet d’implémenter un paramètre pour une commande.
IDbCommand Permet de donner une commande qui s’exécutera au moment de la connexion ? une source de données. IDbConnection Représente une connexio PAGF E 5 une As IDataReader commande. ExecuteReader() While (lire. Read()) Console. WriteLine(« lD : {O} Nom : {1} | Prenom : {2} RoleNumero : {3E’, lire. Getlnt32(O), lire. GetString(1), lire(« Prenom »), lire(i’Role »)) End While connexion. Close() connexion. Dispose() Console. ReadLine() End Sub 11 using System. Data; using System. Data. Common; using System. Data .
SqlClient; //A rajouter static void args) string requete, connexionString; connexionstring = @ »Data Security=true; »; requete = « SELECT * FROM Employe• ; IDbConnection connexion = new SqlConnection(connexionString); IDbCommand commande = connexion. CreateCommand(); commande. CommandText = requete; commande. CommandType = CommandType. Text; connexion. open(); jour. De plus il est facile de voir quels sont les utilisateurs connectés et sur quoi ils travaillent. Enfin, la gestion est simple, il y a connexion au début de l’application puis éconnexion à la fin.
L’inconvénient se trouve surtout au niveau des ressources. En effet, tous les utilisateurs ont une connexion permanente avec le serveur. Même si l’utilisateur n’y fait rien la connexion gaspille beaucoup de ressource entrainant aussi des problèmes d’accès au réseau. Déconnecté L’avantage est qu’il est possible de brancher un nombre important d’utilisateurs sur le même serveur. En effet, ils se connectent le moins souvent et durant la plus courte durée possible. De plus, avec cet environnement déconnecté, l’application gagne en performance par la disponibilité des ressourc