Problème de lancement de batch - Shell/Batch - Programmation
Marsh Posté le 02-12-2009 à 11:50:57
il ne faut pas mettre des "exit" mais des "exit /b" à la fin de tes scripts, car sinon ca quitte tous les scripts.
autant pour moi... ca ne doit pas être ca. tu as vu que tu a mélangé des .sql et des .bat???
Marsh Posté le 02-12-2009 à 11:56:56
Oui j'ai bien vu ça, mais bon si je renomme le runall.sql en .bat et que je mets juste des .bat dedans ça ne fonctionne pas non plus, de toute façon je ne peux faire ça.
Marsh Posté le 02-12-2009 à 13:00:28
réexplique ta problématique depuis le début, parce que la on s'embrouille...
à la base, dans un script bat, tu voulais lancer via un seul appel à sqlplus plusieurs fichiers sql. du coup tu créé un fichier all.sql qui contient des @ vers les autres...
maintenant, que veux tu faire?
Marsh Posté le 02-12-2009 à 13:28:16
Maintenant ce que je veux faire c'est à partir d'un fichier .bat il lance tous les fichiers dont j'ai besoin aussi bien des fichiers .sql que des .bat et aussi des commandes sql exec "une_instruction"
A la base mon fichier runall.? doit lancer un fichier sql qui lance plusieurs requêtes, ces requêtes génèrent des fichiers, ensuite les .bat servent à charger ces fichiers dans des tables temporaires et enfin les 3 exec pour mettre à jour une autre base à partir des tables temporaires.
En gros si cela etait possible le fichier runall.(je ne sais pas l'extension) devrait lancer :
Code :
|
Marsh Posté le 02-12-2009 à 14:02:31
tu peux pas. oracle ne sait pas ce qu'est un .bat, il ne l'exécutera pas. par contre rien ne t'empêche de lancer un sqlplus, puis de faire tes traitements de fichiers, puis de lancer un autre sqlplus, etc.
en gros si je pars sur ca:
Code :
|
ca deviendrait qqchose comme ca:
fichier exec_instructions.sql
Code :
|
fichier principal.bat
Code :
|
et la tu lance principal.bat et le tour est joué.
il ne faut pas confondre le arobase de @un_script.bat qui permet à dos de ne pas afficher la commande en cours (pour ne pas afficher le echo off ou le lancement d'un sous-script) et le arobase de sqlplus user/pass@basetest @requete.sql qui est la pour dire à sqlplus: ca c'est le fichier de requetes que tu dois me jouer...
tu me suis?
Marsh Posté le 02-12-2009 à 15:33:04
Oui je confondais !
Mais encore un problème, à la fin de la requete exp-civichim.sql, j'ai la main dans la console "SQL>", le problème est que les .bat ne se sont pas lancés ni les exec
Marsh Posté le 02-12-2009 à 10:04:24
Bonjour !
Voila j'aimerais automatiser plusieurs chose, j'ai un fichier que je nomme log.bat qui se connecte à la base et lance un fichier :
Le fichier runall.sql contient plusieurs fichiers à executer :
Le problème est que les fichiers sqlldagt.bat, sqlldabs.bat et sqlldenf.bat ne se lance pas !
Quand je les lance séparément il n'y a aucun problème mais quand j'exécute le log.bat il y a des erreurs ...
SP2-0734: commande inconnue au début de "sqlldr..." - le reste de la ligne est ignoré.
Pourtant quand je le lance seul, il s'exécute très bien, d'où peut venir le problème ?
Merci