La commande LNCDBGET permet de récupérer des données dans une base de données Oracle, MySQL, PostgreSQL, Sybase, DB2 pour iSeries ou Microsoft SQL Server.
Une extension de licence "JDBC" est obligatoire.
Paramètres
La commande LNCDBGET requiert les paramètres suivants :
|
|
|
Port du serveur DB |
NbPort |
|
Type de DB |
Type |
|
Adresse IPv4 du serveur DB |
SvrAddr |
|
Utilisateur DB |
User |
|
Mot de passe utilisateur DB |
Password |
|
Nom de la base de données |
DBName |
|
Requête SQL |
Query |
|
Chemin complet du fichier résultat CSV |
CSVFile |
Prérequis
Installation des JARs JDBC sur le PC/serveur hébergeant le serveur Launcher:
Afin de pouvoir accéder aux bases de données Oracle, MySQL, PostgreSQL, Sybase, DB2 pour iSeries ou Microsoft SQL Server, il faut impérativement que les JARs JDBC des bases de données soient présents dans le répertoire d’installation du serveur Launcher.
Par exemple :
C:\Program Files (x86)\LAUNCHER400\LAUNCHER_JDBC\LNCClientWrapperJDBC_lib.
Liste des JARs JDBC officiels à utiliser obligatoirement (aucune garantie de fonctionnement pour tout autre JAR utilisé):
•
Pour les bases de données Oracle, il faut utiliser le driver Thin
fourni par Oracle.
Par exemple pour Oracle Database 10g Release 2 , le driver
Thin JDBC est nommé ojdbc14.jar , et peut être téléchargé en utilisant
le lien suivant :
http://www.oracle.com/technetwork/database/enterprise-edition/jdbc-10201-088211.html
•
Pour
les bases de données MySQL, le driver JDBC mysql-connector-java-5.1.21-bin.jar
doit être utilisé :
http://www.mysql.com/downloads/connector/j/
•
Pour les bases de données PostgreSQL (≥
version
7.2), le driver JDBC postgresql-9.2-1000.jdbc4.jar peut être téléchargé
en suivant ce lien :
http://jdbc.postgresql.org/download.html
•
Pour
les bases de données Sybase (tous les produits Sybase utilisant JConnect-7_0:
Adaptive Server Enterprise, SQL Anywhere, Sybase IQ, et Replication Server), le
driver jconn4.jar doit être utilisé :
http://www.sybase.fr/products/allproductsa-z/softwaredeveloperkit/jconnect
•
Pour
les bases de données Microsoft SQL Server (SQL Server2012, SQL Server 2008 R2,
SQL Server 2008, SQL Server 2005, et SQL Azure), le driver sqljdbc4.jar
doit être utilisé :
http://www.microsoft.com/en-us/download/details.aspx?displaylang=en&id=11774
•
Pour
les bases de données IBM DB2 pour iSeries, il faut utiliser le driver jt400.jar
fourni avec IBM System i Access for Windows. Après avoir installé IBM Access
sur votre PC, vous pourrez trouver le driver JDBC par exemple ici :
C:\Program Files (x86)\IBM\Client Access\jt400\lib\jt400.jar
Après avoir installé les JARs JDBC, il faut absolument redémarrer le serveur Launcher.
Exemple
Dans cet exemple qui suit, la base de donnée adressée a les caractéristiques suivantes :
• Type DB : PostgreSQL
• Adresse du serveur DB : 192.168.1.7
• Port du serveur DB : 6078
• Utilisateur DB : postgres
• Mot de passe utilisateur DB : aura
• Nom de la database : newold
• Requête SQL : select * from marci where title < "b"
Le fichier de données issues de la base de données est toujours stocké dans :
%TEMP%\CSV_result.csv
La commande LNCTOXLS
est utilisée pour générer le document Excel suivant :
c:\temp\result.xls
PGM
LNCOPEN
LNCCMD CMD(LNCDBGET) +
PARM1('Type=postgresql;SvrAddr=192.168.1.7+
0;NbPort=:6078;User=postgres;Password=aura+
;DBName=newold;Query=select * from +
marci where title < +
''b'')+
CSVFile=C:\Users\crobini\AppData\Local\Temp\+
CSV_result.csv')
LNCCMD CMD(LNCTOXLS) +
PARM1('ToXls=*new;ToSheet=*NONE;ToName=*NON+
E;ColPref=*NONE;DataSource=C:\Users\crobini+
\AppData\Local\Temp\CSV_result.csv;RecCnt=32;A+
utoFmt=*NONE;AutoFit=true;FmtCells=false;Ad+
dColH=false;ShowDoc=true;SavDoc=C:\temp\res+
ult.xls;SavFmt=*XLS')
LNCCLOSE
ENDPGM