lancer des requettes SQL via scripts.... [shell][scripting][SGBD] - Codes et scripts - Linux et OS Alternatifs
Marsh Posté le 28-01-2004 à 13:46:52
tu devrait essayer de faire ça :
duplique ton script SQL vers un équivalent. ex : mop.sql devient mop.sql.tmp
tu fais un sed pour remplacer tes occurences de $var1 par $1, $var2 par $2 etc
et tu passes le tmp en paramètres au lieu de l'original
contrainte : ton nombre de var est limité
Marsh Posté le 28-01-2004 à 13:50:44
Hmm, c'est vraiment pas beau tout ça. Le mieux ça serait de faire un script perl.
Il existe un module perl pour se connecter aux bases mysql.
Pour postgre, je suppose qu'il doit y en avoir un aussi.
Marsh Posté le 28-01-2004 à 13:52:09
ouaip, pour postgres y'a un module et il est très simple à utiliser!
Marsh Posté le 28-01-2004 à 13:56:04
comment ça ?
toto.sh --->
...
...
toiiii.sql foo
....
truc comme ça ?
ou foo est $1 dans le fichier .sql ???
Marsh Posté le 28-01-2004 à 14:04:37
bon ben ça marche pas de toute façon...
la seule autre solution provisoire trouvée est de faire
$ psql -v rr1=tutu -qf toto.sql test |
ou rr1 est le nom de variable...
mais là encore ça resoud pas le probleme c'est qu'une autre façon toute aussi barbare et malpropre de faire...
Marsh Posté le 28-01-2004 à 14:04:56
ArSuniK a écrit : Hmm, c'est vraiment pas beau tout ça. Le mieux ça serait de faire un script perl. |
je fais pas de perl
mais c'est clair que ce que j'ai prposé c'est ue solution de goret
Marsh Posté le 28-01-2004 à 14:08:22
ArSuniK a écrit : Hmm, c'est vraiment pas beau tout ça. Le mieux ça serait de faire un script perl. |
certes mais perl je m'en tapes... j'ai dit shell (du moins pour cette question)...
je ne peux pas utiliser perl il faut que n'importe qui (même debutants donc shell obligatoirement) puisse comprendre les liens entre les shells les sql et les fichiers generés ...
deplus j'ai jamais vu une production scriptée utiliser autrechose que du shell avec du SQL derierre...
Marsh Posté le 28-01-2004 à 14:21:55
exemple complet qui fonctionne
|
mon fichier lis contient bien la chaine généré par la variable rr1
mais le principe est la
exemple
|
d'où l'interet de trouver une solution efficace pour les passages de variables... et pour la rediraction des resultats...
toutes les solutions que j'utilise actuellement fonctionne je que je cherche c'est une façon plus propre....
tout en ne gardant que du standard et donc forcement shell et pl/sql ou SQL pur...
Marsh Posté le 28-01-2004 à 12:22:26
bonjour suites aux conseil donnés dans la section programmation/SGBD je cros-post ici puisque peut etre certains d'entre vous pourront me conseiller...
http://forum.hardware.fr/forum2.ph [...] warefr.inc
faut pas crossposter d'habitude mais j'ai eut pour seule reponse voir sur OSA, et ça fait pas mal de jours que la question est posée....
alors moderateurs soyez comprehenssifs...merci
---------------
If everything else failed then read the instructions