nutools/doc/tools/sqlcsv.md

94 lines
5.0 KiB
Markdown
Raw Permalink Normal View History

# sqlcsv
~~~
USAGE:
sqlcsv [query]
query est la requête SQL à exécuter. Si query n'est pas spécifiée ou si elle
vaut '-', la requête SQL est lue sur l'entrée standard, ou depuis un
fichier si l'option -f est spécifiée.
DEMARRAGE
Au démarrage, les répertoires de configuration (utilisateur ~/.sqlcsv et système
/etc/sqlcsv) sont analysés. Les fichiers *.jar situés dans ces répertoires sont
ajoutés au CLASSPATH. La présence de certains fichiers est testée pour activer
éventuellement les logs détaillés.
OPTIONS
-C, --config CONFIG
Prendre les informations de connexion depuis le fichier de propriété
spécifié. Pour l'identifiant CONN, la propriété 'CONN.url' doit exister
dans ce fichier avec la valeur de l'url jdbc de connexion. De plus, les
propriétés 'CONN.user' et 'CONN.password' contiennent respectivement si
nécessaire le nom et le mot de passe de connexion. La propriété
'loglevel', si elle existe, est utilisée pour configurer le niveau
d'affichage des logs, comme avec l'option --loglevel
Si cette option n'est pas spécifiée, un fichier nommé sqlcsv.properties
est recherché dans l'ordre: dans le répertoire courant, dans le
répertoire de configuration utilisateur, puis dans le répertoire de
configuration système. Si le fichier est trouvé, il est chargé
automatiquement.
-l, --conn CONN
Spécifier l'identifiant (ou l'url) de connexion. Cette information est
obligatoire. Si cette option n'est pas fournie, il faut spécifier un
fichier de configuration avec l'option -C dans lequel *une seule*
propriété 'CONN.url' est définie.
-u, --user USER
-p, --password PASSWORD
Spécifier un nom de connexion et un mot de passe si l'url ne le fournit
pas. Ces valeurs ont la priorité sur les valeurs éventuellement déjà
présentes dans le fichier de propriété.
-f, --input INPUT
Lire la requête depuis le fichier INPUT au lieu de la lire depuis la
ligne de commande ou l'entrée standard. Ne pas spécifier cette option ou
utiliser '-' pour lire depuis l'entrée standard. Cette option est
ignorée si la requête est fournie sur la ligne de commande.
-o, --output OUTPUT
Ecrire le résultat dans le fichier OUTPUT. Utiliser '-' pour spécifier
la sortie standard (c'est la valeur par défaut). S'il y a plusieurs
requêtes et que le fichier de sortie n'est pas la sortie standard,
ajouter un numéro incrémental au nom du fichier en sortie pour chaque
requête. Sinon, il est possible de spécifier plusieurs fois cette option
pour nommer les fichiers correspondant à chaque requête.
-t, --autocommit
Activer le mode autocommit
-c, --ignore-io-error
Continuer le traitement même en cas d'erreur du système de fichiers.
Cependant le traitement s'arrête et la transaction est annulée si une
autre erreur se produit.
-y, --ignore-any-error
Continuer le traitement même en cas d'erreur quelconque.
-n, --no-headers
Ne JAMAIS inclure les en-têtes dans la sortie, même avec l'option -h
-a, --append
Ajouter le résultat au fichier OUTPUT au lieu de l'écraser.
-A, --auto-na
Activer les option -n -a si le fichier OUTPUT existe et qu'il est non
vide. Le test n'est effectué que pour le premier fichier spécifié.
-s, --same-output
Utiliser le même fichier pour écrire le résultat de toutes les requêtes.
Normalement, un numéro incrémental est ajouté au fichier en sortie si
plusieurs requêtes sont spécifiées. Si les en-têtes sont les mêmes,
ajouter le résultat au fichier directement à la suite. Sinon, sauter une
ligne blanche et afficher les nouveaux en-têtes.
-h, --force-headers
En cas d'écriture du résultat de plusieurs requêtes dans un même
fichier, ne pas tenter de concaténer les résultats même si les en-têtes
sont les mêmes.
--uc-output
Ajouter dans la sortie les résultat de toutes les requêtes, pas
seulement celles de type DQML
--loglevel LOGLEVEL
Spécifier le niveau de logs à afficher. Les valeurs valides sont à
choisir parmi ALL, FINEST, FINER, FINE, CONFIG, INFO, WARNING, ERROR
La présence de certains fichiers dans les répertoires de configuration
utilisateur ou système configure les logs avant que les options de la
ligne de commande ne soient analysés: un fichier DEBUG fait démarrer
l'application avec le niveau de log ALL ce qui permet de voir les logs
concernant le chargement des jar. Un fichier SQL_DEBUG permet d'activer
la trace de DriverManager. Exemple:
mkdir -p ~/.sqlcsv && touch ~/.sqlcsv/{DEBUG,SQL_DEBUG}
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary