IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SQL Oracle Discussion :

Exécution de script pl sql à partir d'un script shell


Sujet :

SQL Oracle

  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    314
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 314
    Points : 206
    Points
    206
    Par défaut Exécution de script pl sql à partir d'un script shell
    Bonjour,

    je souhaiterais lancer du code pl/sql à partir d'un shell. J'ai donc créé un fichier .sh dont voici le contenu

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
    CONNECT_STRING="user/password@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=bdd)(PORT=1521)))(CONNECT_DATA=(SID=monsid)))"
    export ORACLE_HOME="/usr/local/OraHome"
     
    date
     
    ${ORACLE_HOME}/bin/sqlplus $CONNECT_STRING
     
    SET serveroutput ON
    SET head off
    SET feed off
    declare
    begin
     inscription.traitement_confirmation_web;
    end;
    /
    EOF
    exit
     
    date
    Lorsque j'essaie de lancer mon .sh de la sorte,
    La connexion a bien lieu cependant le code sql n'est pas exécuté et mon shell passe en mode sql (sql>)
    Je tape donc exit et là mon code est exécuté
    et j'ai à l'écran ses messages d'erreurs :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Déconnecté de Oracle8i Enterprise Edition Release 8.1.7.4.1 - Production
    With the Partitioning option
    JServer Release 8.1.7.4.1 - Production
    monfichier.sh: line 11: SET: command not found
    monfichier.sh: line 12: SET: command not found
    monfichier.sh: line 13: SET: command not found
    Je pense que le code pl/sql est interprété après et c'est pour cela que je reçois ses messages.

    Ma question est quelqu'un saurait-il comment je dois m'y prendre afin que ma procédure soit exécutéé?

    Merci

  2. #2
    Membre expérimenté Avatar de scheu
    Inscrit en
    Juin 2007
    Messages
    1 506
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 1 506
    Points : 1 736
    Points
    1 736
    Par défaut
    Tu as apparemment oublié <<EOF à la fin de ta commande sqlplus
    Essaie dans ton shell un truc du genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    CONNECT_STRING="user/password@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=bdd)(PORT=1521)))(CONNECT_DATA=(SID=monsid)))"
    export ORACLE_HOME="/usr/local/OraHome"
    date
    ${ORACLE_HOME}/bin/sqlplus $CONNECT_STRING <<EOF
    SET serveroutput ON
    SET head off
    SET feed off
    declare
    begin
     inscription.traitement_confirmation_web;
    end;
    /
    exit;
    EOF
    date

Discussions similaires

  1. Lancer un script SQL à partir d'un script SQL
    Par Chevalier au taureau dans le forum MySQL
    Réponses: 0
    Dernier message: 06/05/2011, 16h52
  2. Executer un script sql à partir d'un script shell
    Par bfard dans le forum Sql*Plus
    Réponses: 4
    Dernier message: 13/04/2010, 13h15
  3. comment exécuter un script sql à partir de la ligne de commande
    Par feros2184 dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 20/05/2009, 21h01
  4. [PAMC]génération d'un mcd à partir d'un script sql
    Par jounaidi dans le forum Sybase
    Réponses: 2
    Dernier message: 27/03/2006, 17h43
  5. Réponses: 4
    Dernier message: 01/06/2005, 17h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo