generate-mapping : autogénération de fichiers d'associations D2RQ

Traducteurs

| Julien Plu | Yoan Chabot |

L'outil generate-mapping crée un fichier d'association D2RQ en analysant le schéma d'une base de données existante. Ce fichier d'associations, nommé associations par défaut, associe chaque table à une nouvelle classe RDFS qui est basée sur le nom de la table, et associe chaque colonne à une propriété basée sur le nom de la colonne. Ce fichier d'association peut être utilisé comme ça ou peut être personnalisé. Commentez

- Titre : generate-mapping : autogénération de fichiers d'associations D2RQ

- Traducteurs : Julien Plu, Yoan Chabot

- Parution : 11 avril 2012

- Mise à jour : 13 janvier 2016

- Public visé :

- Licence : Copyright ® 2012-2016 Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.

Sommaire

- I. Utilisation

- I-A. Paramètres de connexion

- I-B. Paramètres de sortie

- II. Exemples

- II-A. Base de données MySQL local

- II-B. Base de données Oracle distante

- II-C. Initialise une base de données en mémoire à partir d'une sauvegarde SQL

- II-D. Lit une liste de colonnes exclues à partir d'un fichier

- III. Remerciements

I - Utilisation

generate-mapping [-u user] [-p password] [-d driver]
[-l script.sql] [--[skip-] (schemas|tables|columns) list]
[--w3c] [-v] [-b baseURI] [-o outfile.ttl]
[--verbose] [--debug]
jdbcURL

I-A - Paramètres de connexion

jdbcURL
L'URL de connexion JDBC pour la base de données. Se reporter à la documentation de votre pilote JDBC pour le format de votre moteur de base de données. Exemples :

- MySQL : jdbc:mysql://servername/databasename;

- PostgreSQL : jdbc:postgresql://servername/databasename;

- Oracle : jdbc:oracle:thin:@servername:1521:databasename;

- HSQLDB : jdbc:hsqldb:mem:databasename (base de données en mémoire) ;

- Microsoft SQL Server : jdbc:sqlserver://servername;databaseName=databasename (en raison du point-virgule, l'URL doit être mise entre guillemets lorsqu'elle est transmise comme paramètre à une ligne de commande dans un terminal Linux/Unix).

Si -l est présent, alors l'URL JDBC peut être omise pour charger un script SQL dans une base de données HSQLDB en mémoire. Voir l'exemple.

-u user
Le nom d'utilisateur de la base de données.

-p password
Le mot de passe de l'utilisateur de la base de données.

-d driver
Le nom complet de la classe Java du pilote de la base de données. Pour MySQL, PostgreSQL et HSQLDB, ce paramètre peut être omis, car les pilotes sont déjà inclus avec D2RQ. Pour les autres bases de données, un pilote doit être téléchargé à partir du fournisseur ou d'une tierce partie. Le fichier jar contenant le pilote JDBC doit être dans le répertoire /lib/db-drivers/ de D2RQ. Pour trouver le nom de la classe du pilote, consulter la documentation du pilote. Exemples :

- Oracle : oracle.jdbc.OracleDriver ;

- Microsoft SQL Server : com.microsoft.sqlserver.jdbc.SQLServerDriver.

-l script.sql
Charge un script SQL avant de lancer l'outil. Utile pour l'initialisation de la connexion et les tests. La propriété d2rq:startupSQLScript de la base de données dans l'association générée sera initialisée avec la même valeur.

--schemas, --tables, --columns, --skip-schemas, --skip-tables, --skip-columns
Associe seulement les schémas spécifiés, tables ou colonnes. La valeur de chaque argument est une liste de noms séparés par une virgule. Les noms de schémas sont de la forme schema, les noms de tables de la forme table ou schema.table et les noms de colonnes sont table.column ou schema.table.column.

Chaque segment séparé par un point peut être spécifié comme une expression régulière ci-jointe entre barre oblique.

Si la valeur commence par @, alors elle est interprétée comme un nom de fichier, et la liste de noms est chargée à partir du fichier. Le fichier contient un nom par ligne ou des noms séparés par une virgule. Des exemples suivent :

- --schema SCOTT (associe seulement les tables dans le schéma SCOTT) ;

- --tables PERSONS, ORGS (associe seulement les tables PERSONS et ORGS) ;

- --skip-table TEMP_CACHE (saute la table TEMP_CACHE) ;

- --skip-columns /.*/.CHECKSUM (saute la colonne CHECKSUM de chaque table, si présente) ;

- --skip-tables /BACKUP.*/i (saute les tables BACKUP1, BACKUP2 et ainsi de suite) ;

- --skip-tables @exclude.txt (lit une liste de noms de tables exclues à partir d'un fichier).

I-B - Paramètres de sortie

--w3c
Génère un fichier d'association qui est compatible avec « Direct Mapping of Relational Data to RDF » du W3C. Ceci est une fonction expérimentale et les travaux sont en cours.

-v
Génère une description RDF Schema du vocabulaire à la place d'un fichier d'association.

-o outfile.ttl
L'association générée (ou vocabulaire si -v est utilisé) sera stockée dans ce fichier avec la syntaxe Turtle. Si ce paramètre est omis, le résultat sera écrit sur la sortie standard.

-b baseURI
L'URI de base est utilisée pour construire un espace de noms pour le vocabulaire qui sera automatiquement servi comme données liées par D2R Server, suivant la convention http://baseURI/vocab/resource. Cela devrait être la même URI de base qui est utilisée lors de l'appel du serveur, par défaut http://localhost:2020/. Pour plus d'informations sur le vocabulaire servi, voir la spécification du langage D2RQ.

--verbose
Afficher la progression supplémentaire des informations du journal.

--debug
Afficher toutes les informations de débogage du journal.

II - Exemples

II-A - Base de données MySQL local

generate-mapping -u root jdbc:mysql:///iswc

II-B - Base de données Oracle distante

generate-mapping -u riccyg -p password -d oracle.jdbc.OracleDriver
-o staffdb-mapping.ttl jdbc:oracle:thin:@ora.intranet.deri.ie:1521:staffdb

Cela sauvegardera le fichier d'association dans staffdb-mapping.ttl.

II-C - Initialise une base de données en mémoire à partir d'une sauvegarde SQL

generate-mapping -l db_dump.sql -o mapping.ttl

Cela créera une nouvelle base de données HSQLDB temporaire en mémoire, chargera la sauvegarde SQL db_dump.sql dans la base de données et créera un fichier d'association mapping.ttl pour celle-ci. Le fichier d'association référencera la sauvegarde comme un d2rq:startupSQLScript. Cela est un mécanisme utile pour tester et déboguer rapidement D2RQ.

II-D - Lit une liste de colonnes exclues à partir d'un fichier

generate-mapping -u root --skip-columns @bad-columns.txt jdbc:mysql:///iswc

Le fichier bad-columns.txt devrait contenir les noms de colonnes avec la notation schema.table.column ou table.column, une par ligne.

III - Remerciements

Merci à Richard Cyganiak pour son aide et ses conseils durant la réalisation de cette traduction, à Thibaut Cuvelier pour ses corrections puis à FirePrawn et jacques_jean pour leur correction orthographique.