|
Droit de diffusion et
d'utilisation:
Tous les documents ou partie de document ainsi que le code
sont libres d'accès, mais ne peuvent pas être diffusés
sur d'autres sites HTTP, FTP ou autres, sans mon accord.
L'ensemble de mon code mis à votre diposition est libre d'utilisation
tant qu'il ne sert pas à la réalisation d'applications
payantes. Je demande juste aux personnes incluant mon code dans
leurs applications d'y laisser le commentaire mis en entête.
2. Etablir une connexion avec ADO et l'objet Connection:
Pour établir une connexion à une base de données
avec ADO, on utilise l'objet Connection. Vous trouverez dans
ce chapitre un exemple de connexion à une base de données
Access, Oracle et SQL Server.
Une connexion à une base de données se
définit par :
- l'hôte sur lequel se trouve la base de données
- le nom de la base de données
- le nom de l'utilisateur
- le mot de passe
L'ensemble de ces champs est appelé chaîne
de connexion. Les champs "hôte" et "nom
de la base de données" peuvent soit être définis dans le
programme soit dans un DSN (Data Source Name). Un DSN se configure
dans le panneau de configuration avec l'outil Source de
données (ODBC).
Comment réaliser une connexion ? Tout d'abord
il faut déclarer la variable associée à la connexion.
ou alors
Dim cnx As ADODB.Connection
Set cnx = New ADODB.Connection |
L'étape suivante consiste à écrire la chaîne
de connexion. Comme il a été vu précédemment, il existe
deux possibilités soit en utilisant un DSN soit en mettant
les informations nécessaires dans la chaîne de connexion.
2.1 Connexion à une base de données Access sans DSN:
Le piote 3.51 permet d'accéder à Acces
95 et 97. Pour Access 2000, il faut utiliser la version 4.0.
2.2 Connexion à une base de données SQL Server sans DSN:
Comme vous avez pû le constater, il n'y a pas la ligne cnx.Provider.
En effet dans cet exemple le pilote à utiliser est décrit
dans la chaîne de connexion : DRIVER={SQL Server}.
2.3 Connexion
à une base de données Oracle sans DSN:
Vous avez pû voir des chaînes de connexion avec comme
DRIVER {Microsoft ODBC for Oracle}. Ceci marche mais n'est pas
très recommandé.
2.4 Connexion à une base de données avec un DSN:
Dans le cas où il y a le DSN, vous n'avez plus besoin de
spécifier l'hôte sur lequel se trouve la base de données
ainsi que le nom de la base de données.
Pour finir cette partie, voici une petite fonction
de connexion avec DSN.
2.5 Quelques informations supplémentaires sur les pilotes:
Liste des pilotes ODBC sans DSN
dBase
Driver={Microsoft dBASE Driver (*.dbf)};DriverID=277;Dbq=chemin\nombd.dbf;
MS Access
Driver={Microsoft Access Driver (*.mdb)};Dbq=chemin\nombd.mdb;Uid=NomUtilisateur;Pwd=MotDePasse;
MS SQL Server
Driver={SQL Server};Server=NomDuServeur;Database=nombd;Uid=NomUtilisateur;Pwd=MotDePasse;
MS Text Drive
Driver={Microsoft Text Driver (*.txt; *.csv)};Dbq=chemin\;Extensions=asc,csv,tab,txt;Persist
Security Info=False;
MySQL
Driver={mysql}; database=nombd;server=NomDuServeur;uid=NomUtilisateur;pwd=MotDePasse;option=16386;
Oracle
Driver={Microsoft ODBC for Oracle};Server=ServeurOracle.schema;Uid=NomUtilisateur;Pwd=MotDePasse;
Visual Foxpro
Driver={Microsoft Visual FoxPro Driver};SourceType=DBC;SourceDB=chemin\nombd.dbc;Exclusive=No;
Liste des pilotes OLEDB
MS Access
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=chemin\nombd.mdb;User
Id=NomUtilisateur;Password=MotDePasse;
MS SQL Server
Provider=SQLOLEDB;Data Source=NomServeur;Initial
Catalog=nombd;User ID=NomUtilisateur;Password=MotDePasse;
MS SQL Server avec une adresse IP
Provider=SQLOLEDB; Data Source=xx.xx.xx.xx,1433;
Network Library=DBMSSOCN; Initial Catalog=dbname;User ID=NomUtilisateur;Password=MotDePasse;
MS Text Driver
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=chemin;Extended Properties='text;FMT=Delimited'"
Oracle
Provider=OraOLEDB.Oracle;Data Source=nombd;User
Id=NomUtilisateur;Password=MotDePasse;
Documents réalisés par
Sébastien Curutchet
|