VI:Accès à DB2/400 via l`ODBC : 6.1 Introduction La technologie

publicité
VI:Accès à DB2/400 via l'ODBC :
6.1 Introduction
La technologie ODBC permet d’établir un pont entre des applications et les bases de données
les plus courantes . C’est ainsi que l’on pourra indifféremment utiliser une base de données
ACCESS ou DB2 pour réaliser un mailing avec WORD . Cette technologie permet également
de connecter des applications JAVA à une base de données sans se préoccuper de sa nature .
On pourra même changer par la suite de base de données sans modifier l’application JAVA
qui l’exploite .
Toutefois , l’usage d’un élément intermédiaire entre l’application JAVA et la base de données
ralentit les accès et peut même empêcher certaines opérations non reconnues par ODBC .
Plate-forme Cliente
Plate-forme Serveur
Application JAVA
Pont ODBC
driver
odbc jdbc
Driver
DB
Application
Bureautique
Ou autre
Base de
données
6.2 Mise en place d’une connexion DB2/ODBC
Pour que l’ODBC reconnaisse la base de données DB2/400 , il faut au préalable installer le
produit CLIENT-ACCESS sur la plate-forme où est installé l’ODBC .
L’ODBC est disponible à la fois dans les environnements MICROSOFT et LINUX .
Création d’un lien entre ODBC et DB2/400 :
Panneau de configuration
Outils d’administration
 Sources de données(ODBC)
Choisir l’onglet sources de données utilisateur ou l’onglet source de
données système .
 AJOUTER
 choisir la ligne « CLIENT ACCESS »
 TERMINER
 Nom de la Source de données : donner un nom au hasard (par exemple
BDTEST) , ce nom ne doit pas forcément correspondre au nom physique de la
DB .
SELECTIONNER
AS400 SYSTEM : AS400E.LAN
LIBRARY : BDTEST ou J…
 OK
Création d’un lien entre ODBC et DB2 :
Panneau de configuration
Outils d’administration
 Sources de données(ODBC)
Choisir l’onglet sources de données utilisateur ou l’onglet source de
données système .
 AJOUTER
 choisir la ligne « IBM DB2 ODBC DRIVER »
 Nom de la Source de données : donner un nom au hasard (par exemple
DB2_ETUDIANT) , ce nom ne doit pas forcément correspondre au nom physique
de la DB .
 alias de la base de données : choisir dans la liste déroulante l’une des
connexions établies par l’instruction CATALOG DATABASE .
6.3La classe de connexion ODBC
Afin de faciliter les opérations de connexion à la DB et de les rendre réutilisables nous allons
les inclure dans une classe spécifique .
package myconnections;
import java.sql.*;
public class ODBCConnection {
protected String serverName = "DB2_ETUDIANT";
protected String username;
protected String password;
public ODBCConnection() {
FenetreConnexion fc = new FenetreConnexion();
while(!fc.logOK()) ;
username=fc.getLogin();
password=fc.getPassword();
fc.dispose();
}
public ODBCConnection(String username,String password){
this.username=username;
this.password=password;
}
public ODBCConnection(String username,String password,String
serverName) {
this(username,password);
this.serverName=serverName;
}
public Connection getConnection() {
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
//chargement du driver JDBC-ODBC
String url = "jdbc:odbc:"+serverName;
return DriverManager.getConnection(url,username,password);
}
catch(Exception e) {
System.out.println("erreur de connexion "+e);
e.printStackTrace();
return null ;
}
}
}
6.4 Exemple d’utilisation
import
import
import
import
java.sql.*;
java.io.*;
clavier.*;
myconnections.ODBCConnection;
public class SQLODBC {
public static void main(String[] args) {
int n = 1;
Connection dbConnect=null;
ODBCConnection odbcc = new ODBCConnection();
dbConnect = odbcc.getConnection();
if(dbConnect == null) System.exit(0) ;
System.out.println("connexion établie");
Etc …
6.5 Une petite application bureautique
(Ou comment arranger un mariage entre IBM et MICROSOFT)
a.Liaison d’une Table externe dans Microsoft-Access
-créer une DBACCESS  LOCALDB
-FICHIER  DONNEES EXTERNES  LIER TABLES
-Choisir comme type ODBCTABLES
-Choisir l’onglet « Sources de données machine »
-Choisir le pont ODBC correspondant à la base de données DB2
-Choisir les tables nécessaires à l’application bureautique (exemple CLIENTS)
RQ : à partir de cet instant , les tables de DB2 sont accessibles via les outils d’ACCESS .
(en mise à jour notamment)
b.Création d’un document de publipostage avec WORD
-INSERTION  CHAMP  PUBLIPOSTAGE
-Choisir MERGEDFIELD et ajouter le nom d’une colonne de la table contenant les données .
Ex : MERGEDFIELD NOM  « NOM » apparaît dans le document WORD .
-OUTILS  PUBLIPOSTAGE
-CRÉER LETTRE TYPE  FENETRE ACTIVE
-Obtenir les données  Ouvrir la source de données
-Choisir BDACCESS comme type et sélectionner la DB LOCALDB
-Cliquer sur FUSIONNER
Téléchargement