Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1774 connectés 

  FORUM HardWare.fr
  Programmation

  [Réponse] Lancer une procédure PL/SQL à partir d'un shell Unix

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Réponse] Lancer une procédure PL/SQL à partir d'un shell Unix

n°126969
irulan
Posté le 17-04-2002 à 11:08:32  profilanswer
 

Pour dpmy : je préfère répondre ici pour que cela profite à d'autres. Si tu as besoin de précision => MP ou mail.
 
Problème : lancer une procédure PL/SQL à partir d'un shell.
 
Voici ma solution : contenu d'un shell lançant un fichier .sql
 

Citation :


export ORACLE_SID=Nom_instance base
export PATH=$PATH:/usr/local/bin
export ORAENV_ASK=NO
. oraenv
 
### ----- IMPORT DES DONNEES -----
sqlplus user/password @/home/user/sql/nom_fichier.sql
 
exit;


 
Explications complémentaires :
En fait le script lance un fichier du type .sql dans lequel se trouvera l'appel à la procédure stockée (comme dans n'importe quel script Oracle).

mood
Publicité
Posté le 17-04-2002 à 11:08:32  profilanswer
 

n°126986
dpmy
Posté le 17-04-2002 à 11:31:44  profilanswer
 

MERCI !   :pt1cable:

n°127054
darklord
You're welcome
Posté le 17-04-2002 à 13:16:00  profilanswer
 

irulan >>>  :jap:  
 
C'est comme ca que je vois un forum. Mettre à disposition de tous les réponses et pas, comme certains ici, poser une question puis partir en disant :" c'est bon j'ai trouvé"
 
 :hello:


---------------
Just because you feel good does not make you right
n°127059
dpmy
Posté le 17-04-2002 à 13:21:17  profilanswer
 

DarkLord a écrit a écrit :

irulan >>>  :jap:  
 
C'est comme ca que je vois un forum. Mettre à disposition de tous les réponses et pas, comme certains ici, poser une question puis partir en disant :" c'est bon j'ai trouvé"
 
 :hello:  




 
 
Oh mais pardon monsieur ! Je ne pensais pas que mes questions idiotes en intéresseraient d'autres !!   :spookie:

n°127061
goueg
De passage
Posté le 17-04-2002 à 13:22:40  profilanswer
 

en attendant tu viens de poster un msg en disant a peu pres "g trouvé comme une grande"... sans dire koi. bouuuh mechante :na:

n°127064
dpmy
Posté le 17-04-2002 à 13:24:55  profilanswer
 

Goueg a écrit a écrit :

en attendant tu viens de poster un msg en disant a peu pres "g trouvé comme une grande"... sans dire koi. bouuuh mechante :na:  




 
J'ai trouvé comme une grande la réponse à la question qu'a posé Farid, si tu lisais la topic en entier !  :ange:  
Mais comme le pb n'avait pas lieu d'être c'est pour cela que je ne m'étends pas là-dessus !  :(

n°127066
goueg
De passage
Posté le 17-04-2002 à 13:29:34  profilanswer
 

dpmy a écrit a écrit :

 
 
J'ai trouvé comme une grande la réponse à la question qu'a posé Farid, si tu lisais la topic en entier !  :ange:  
Mais comme le pb n'avait pas lieu d'être c'est pour cela que je ne m'étends pas là-dessus !  :(  




 
bah ca change rien tu fais pas profiter les forumeurs des soluces a vos pb ;)
et pi avant de degainer les topics, consultez-vous fafe et toi... vous zetes a coté nan? :D

n°127072
dpmy
Posté le 17-04-2002 à 13:34:41  profilanswer
 

Mais j'ai quand même donner les solutions à tous les pbs au final non : ftp, dbms_job... !?  :(  
Et puis si j'avais demandé irulan de m'envoyer la reponse par mail, c'était pr des pb de clartés parce que je connaissais pas la longueur du script et pour eviter q des smileys s'immiscent ds les commandes...
 
Qd à Farid et moi, à l'origine il postait les questions sur commentcamarche donc...

n°127075
goueg
De passage
Posté le 17-04-2002 à 13:36:46  profilanswer
 

bon c embroillant ce bordel, laisse tomber :)
par contre pour les smileys c facile: qd tu rediges un msg, tu "checke" Désactiver les smilies, comme je le fais là :hello: :)

n°127077
goueg
De passage
Posté le 17-04-2002 à 13:37:17  profilanswer
 

... comme j'ai oublié de le faire là :sweat: ayé c fait

mood
Publicité
Posté le 17-04-2002 à 13:37:17  profilanswer
 

n°127078
dpmy
Posté le 17-04-2002 à 13:38:33  profilanswer
 

ok thank iou  :hap:

n°127081
Profil sup​primé
Posté le 17-04-2002 à 13:40:09  answer
 

:D ;) :) cai supaire ca j'avai jamais essayer  :gun:

n°127086
goueg
De passage
Posté le 17-04-2002 à 13:42:50  profilanswer
 

mr_mat a écrit a écrit :

:D ;) :) cai supaire ca j'avai jamais essayer  :gun:  




 
j'ai ce don extraordinaire de savoir ouvrir les yeux :lol:

n°127092
dpmy
Posté le 17-04-2002 à 13:49:47  profilanswer
 

Juste une questions...
 
 
    ... vous travaillez vraiment ???  :ange:

n°127097
goueg
De passage
Posté le 17-04-2002 à 13:52:15  profilanswer
 

dpmy a écrit a écrit :

Juste une questions...
 
 
    ... vous travaillez vraiment ???  :ange:  




 
parle pour toi :sarcastic:

n°127100
darklord
You're welcome
Posté le 17-04-2002 à 13:54:58  profilanswer
 

dpmy a écrit a écrit :

Juste une questions...
 
 
    ... vous travaillez vraiment ???  :ange:  




 
bah si tu es en stage tu dois pas vraiment te poser la question ... Quoi que je me souviens du mien. Les horaires étaient cool mais la densité de travail bcp plus importante que maintenant ...


---------------
Just because you feel good does not make you right
n°127102
dpmy
Posté le 17-04-2002 à 13:55:21  profilanswer
 

effectivement en ce moment, je n'ai pas grand chose a faire car le medecin avec qui on doit définir le cahier des charges ne revient que lundi...  :)

n°127118
Profil sup​primé
Posté le 17-04-2002 à 14:12:36  answer
 

dpmy a écrit a écrit :

Juste une questions...
 
 
    ... vous travaillez vraiment ???  :ange:  



joker :D :D

n°127133
irulan
Posté le 17-04-2002 à 14:23:26  profilanswer
 

CAI PAS FINI DE POURRIR MON BÔ TOPIC DE REPONSE !
 
  :bounce:

n°127137
goueg
De passage
Posté le 17-04-2002 à 14:27:40  profilanswer
 

:lol:  :lol:  :lol:

n°127140
irulan
Posté le 17-04-2002 à 14:30:34  profilanswer
 

Ben oui, c'est vrai quoi, on poste une réponse (donc sans question, hein, une vraie, qui n'appelle pas de réaction en théorie), et on revient 1 heure après => 17 réponses  :ouch:  
 
 :pt1cable:  :D

n°127157
Profil sup​primé
Posté le 17-04-2002 à 14:44:04  answer
 

ca évite le bide

n°127235
dpmy
Posté le 17-04-2002 à 16:13:35  profilanswer
 

DONC POUR REPRENDRE CE SI BEAU TOPIC !!
 
J'ai maintenant un autre pb.  
Lorsque je lance le shell (sqlplus user ....et tout et tout), au lieu de me connecter directement, il va me demander d'entrer le user !!
 
En gros, c'est le même pb que lorsque je voulais me connecter au ftp (tu n'as peut-être pas suivi aussi...)et qu'il me demandait d'entrer le mot de passe alors que j'avais tout mis en paramètre...
 
... que faire ?

n°127241
goueg
De passage
Posté le 17-04-2002 à 16:17:19  profilanswer
 

une recherche google? :D

n°127243
darklord
You're welcome
Posté le 17-04-2002 à 16:18:04  profilanswer
 

quelle bande de bananes vous autres c'est pas vrai :D
 
 :lol:


---------------
Just because you feel good does not make you right
n°127248
Profil sup​primé
Posté le 17-04-2002 à 16:22:27  answer
 

dpmy a écrit a écrit :

DONC POUR REPRENDRE CE SI BEAU TOPIC !!
 
J'ai maintenant un autre pb.  
Lorsque je lance le shell (sqlplus user ....et tout et tout), au lieu de me connecter directement, il va me demander d'entrer le user !!
 
En gros, c'est le même pb que lorsque je voulais me connecter au ftp (tu n'as peut-être pas suivi aussi...)et qu'il me demandait d'entrer le mot de passe alors que j'avais tout mis en paramètre...
 
... que faire ?  




 
:cry: pas ENCORE !!!

n°127249
irulan
Posté le 17-04-2002 à 16:23:05  profilanswer
 

dpmy > ... que faire ?  
 
:cry:  :cry:
 
Egorger un poulet ce soir à minuit ?

 

[jfdsdjhfuetppo]--Message édité par irulan--[/jfdsdjhfuetppo]

n°127268
dpmy
Posté le 17-04-2002 à 16:43:10  profilanswer
 

Je précise juste que j'ai bien mis oraenv_ask=no !!!  :wahoo:

n°127277
irulan
Posté le 17-04-2002 à 16:53:36  profilanswer
 

Plutôt que de tester tout en même temps, décompose tes tests de script :
 
1- test script shell pour voir si un bête affichage de message fonctionne (genre echo 'Test';). Si ok tu passes à l'étape suivante.
 
2- Test script sql seul (en gros tu lances ton script .sql directement à partir de la ligne de commande). Si ok tu passes à l'étape suivante.
 
3- Test script shell avec appel sqlplus.
 
etc, etc.
Ainsi même si à la fin ça ne marche pas, tu sauras au moins où le problème se situe exactement. Il faut que tu essaies un peu de voir de ton côté, parce que là on ne peut pas dire grand chose  :(

 

[jfdsdjhfuetppo]--Message édité par irulan--[/jfdsdjhfuetppo]

n°127292
dpmy
Posté le 17-04-2002 à 17:11:03  profilanswer
 

Une fois pour toute...
 
 
   JE CHERCHE AUSSI DE MON COTE !!!!!!!!  
 
 
Alors effectivement, je dégaine un peu rapidement mes questions (une habitude que je vais vite perdre ne vous inquiétez pas) mais je cherche aussi de mon côté !!!!!!

n°127327
irulan
Posté le 17-04-2002 à 17:31:09  profilanswer
 

dpmy > JE CHERCHE AUSSI DE MON COTE !!!!!!!!
Bon ok ok, mais en complément à mes remarques : donnes également les résultats de tes tests !
Parce que là tu dis que ça ne marche pas, mais c'est vachement général...  
 
Tandis que si tu nous dis que lorsque tu lances un script tout bête c'est bon, mais que c'est lorsque tu fais appel à sqlplus que ça plante, ça orientera les réponses.
 
Bon courage quand même  :hello:

 

[jfdsdjhfuetppo]--Message édité par irulan--[/jfdsdjhfuetppo]

n°127392
dpmy
Posté le 17-04-2002 à 18:42:26  profilanswer
 

A l'heure d'aujourd'hui :
 
##test.sh
oraenv_ask=no
 
sqlplus login/mot_passe @/chemin_fichier/envoi_proc.sh
 
##envoi_proc.sh
exec procedure
exit;
 
 
--> sh test.sh : ca marche
--> si je passe par un cron qui lance test.sh : "sqlplus : command not found"
 
Je n'écris pas ça pour vous demander comment cela se fait mais juste pour vous dire que le pricipal marche.  :)  
 
Bonne soirée à tous et merci encore !  :jap:

n°127502
irulan
Posté le 17-04-2002 à 22:21:14  profilanswer
 

Aah ben voilà : à mon avis il y a un problème d'utilisateur.
 
Le cron est peut-être lancé par un utilisateur qui n'a pas dans son path le chemin vers sqlplus. D'où le message d'erreur comme quoi il ne comprend pas la commande sqlplus.
 
Essaies soit de réutiliser dans le script la ligne
export PATH=$PATH:/usr/local/bin  
-> je pense que cette ligne permet d'être sûr que, quelque soit l'utilisateur qui le lance, il aura bien accès à Oracle. A adapter peut-être selon le répertoire où se trouve sqlplus.
 
soit de vérifier le user Unix qui lance le cron, et vérifier qu'il a bien accès à sqlplus.

 

[jfdsdjhfuetppo]--Message édité par irulan--[/jfdsdjhfuetppo]

mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation

  [Réponse] Lancer une procédure PL/SQL à partir d'un shell Unix

 

Sujets relatifs
ftp sous unixErreur Sql
lancer une procedure en pl/sql avec un cron...pl/sql dans du shell
[PHP] requete SQL[SQL + PHP ] - Tirage aleatoire dans une db?
lancer un shell qui envoit des fichiers sur ftpDebutant : SQL : EXISTS et NOT EXISTS qqun peut m'expliké ?!!
Plus de sujets relatifs à : [Réponse] Lancer une procédure PL/SQL à partir d'un shell Unix


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR