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

Oracle Discussion :

exécuter une commande système à partir de sqlplus?


Sujet :

Oracle

  1. #1
    Nouveau membre du Club
    Inscrit en
    Octobre 2005
    Messages
    56
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 56
    Points : 28
    Points
    28
    Par défaut exécuter une commande système à partir de sqlplus?
    Bonjour tout le monde,

    j'aurais aimer savoir comment on fait pour exécuter une commande système à partir de sqlplus ?

    On m'a dit de faire çà pour pouvoir envoyer des mails mais je ne sais pas du tout comment faire...

  2. #2
    Rédacteur

    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    2 320
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 320
    Points : 3 798
    Points
    3 798
    Par défaut
    Merci d'indiquer la version d'oracle

    En précédant ta commande systéme par host

  3. #3
    Nouveau membre du Club
    Inscrit en
    Octobre 2005
    Messages
    56
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 56
    Points : 28
    Points
    28
    Par défaut
    c'est la version 8i...

    en quoi consiste une commade système ?
    et comment la présenter ?

  4. #4
    CD
    CD est déconnecté
    Membre habitué
    Inscrit en
    Septembre 2004
    Messages
    127
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 127
    Points : 151
    Points
    151
    Par défaut
    La commande host t'aidera :

    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
    test@BROCANTE> select sysdate from dual;
     
    SYSDATE
    --------
    07/11/05
     
    test@BROCANTE> host date /t
    lun. 07/11/2005
     
    test@BROCANTE> host
    Microsoft Windows 2000 [Version 5.00.2195]
    (C) Copyright 1985-2000 Microsoft Corp.
     
    C:\Program Files\Java>date /t
    lun. 07/11/2005
     
    C:\Program Files\Java>exit
     
    test@BROCANTE>

  5. #5
    Nouveau membre du Club
    Inscrit en
    Octobre 2005
    Messages
    56
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 56
    Points : 28
    Points
    28
    Par défaut
    J'ai un peu de mal à comprendre...

    J'ai mon message X , mon expéditeur Y et mon destinataire Z, et moi je dois gérer l'envoi de mails via les proc stock dans une commande systeme, j'ai bien compris qu'il faut présenter de la sorte :

    host - commande système -

    mais je ne sais comment présenter les données dans la commande système...

  6. #6
    Membre expert

    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Janvier 2004
    Messages
    2 862
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2004
    Messages : 2 862
    Points : 3 609
    Points
    3 609
    Par défaut
    J'ai l'impression que tu mélanges un peu tout.
    Host est une commande SQL*Plus et ne peut pas être exécutée dans une procédure stockée. Si tu veux gérer des commandes systèmes dans des procédures stockées fais une recherche sur le forum avec les mots clés "exécutable" ou "host", tu trouveras plein d'exemples.
    Un problème sans solution est un problème mal posé

    Merci de poser vos questions sur le forum, je ne réponds pas aux questions posées par MP.

  7. #7
    Nouveau membre du Club
    Inscrit en
    Octobre 2005
    Messages
    56
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 56
    Points : 28
    Points
    28
    Par défaut
    Bonjour, j'aurai aimé savoir comment taper ma commande système.
    - J'ai rempli mon fichier que je dois mailer.
    - j'ai un exe Blat.exe qui permet d'envoyer des mails

    est ce que je peux mettre une commande système dans ma proc pour donner les infos à l'exe.

    Voici mon code :
    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
     
     
    ---Envoi Du MAIL au CHEF DE TRAVAUX du lycée concerné 
     
    --Remplissage du fichier pièce jointe 
    send_mail('Une action préventive doit être entreprise pour le matériel identifié comme suit:'||chr(13)||
      'Filière: '||FiliesLibl||' '||chr(13)||
     'Atelier : '||AtelrLibl||' '||chr(13)||
       'Nom matériel: '||NomMateriel||' '||chr(13)||
       'Code matériel: '||TmateCode||TmateInd||MateNumSeq||' '||chr(13)||
     'N° de série: '||MateNumSerie);
     
    --envoi du mail via une commande système à destination de BLAT.EXE 
    ho "blat.exe" 'Mail.txt' -t fctn_GetMailRecipient(LyceeNum) -f cmoi@domaine.fr -s < "Le sujet\" ");
     
    c'est la derniere ligne qui ne tourne pas et je ne sais pas si ceci est possible, si oui je ne sais pas comment la présenter
     
    Quelqu'un aurait il une idée ?

  8. #8
    Nouveau membre du Club
    Inscrit en
    Octobre 2005
    Messages
    56
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 56
    Points : 28
    Points
    28
    Par défaut
    est ce quelqu'un aurait deja utiliser blat.exe ??
    merci

  9. #9
    Membre expert

    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Janvier 2004
    Messages
    2 862
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2004
    Messages : 2 862
    Points : 3 609
    Points
    3 609
    Par défaut
    Sous SQL*Plus cela donnerait quelque chose comme cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    host ("c:\chemin_de_blat\blat - -f expediteur -t destinataire -s sujet -body texte_du message");
    Un problème sans solution est un problème mal posé

    Merci de poser vos questions sur le forum, je ne réponds pas aux questions posées par MP.

  10. #10
    Nouveau membre du Club
    Inscrit en
    Octobre 2005
    Messages
    56
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 56
    Points : 28
    Points
    28
    Par défaut
    y'aurait pas un "-" en trop ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    host ("c:\chemin_de_blat\blat[b] -[/b] -f slota@regionpaca.fr  -t fctn_GetMailRecipient(LyceeNum) -s action préventive -body texte_du message");

  11. #11
    Nouveau membre du Club
    Inscrit en
    Octobre 2005
    Messages
    56
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 56
    Points : 28
    Points
    28
    Par défaut
    est ce que je peux mettre cette commande dans ma procédure stockée?

    si je peux pas, ou dois je la lancer ?

  12. #12
    Membre expert

    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Janvier 2004
    Messages
    2 862
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2004
    Messages : 2 862
    Points : 3 609
    Points
    3 609
    Par défaut
    Non, cela fonctionne comme cela, enfin avec la version de blat que j'utilise (1.9.4)

    Non tu ne peux pas mettre cela dans une procédure stockée, host est une commande de SQL*Plus. Par contre ce qui est compris entre les guillemets est correct, à condition que tu aies paramétré correctement ta base de registre. Sinon il faut que tu fasses :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    host ("c:\chemin_de_blat\blat - -f expediteur -t destinataire -server ipserversmtp -port 25 -try 1 -s sujet -body texte_du message");
    Un problème sans solution est un problème mal posé

    Merci de poser vos questions sur le forum, je ne réponds pas aux questions posées par MP.

  13. #13
    Nouveau membre du Club
    Inscrit en
    Octobre 2005
    Messages
    56
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 56
    Points : 28
    Points
    28
    Par défaut
    ou est ce que je dois mettre cette commande ?

  14. #14
    Membre expert

    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Janvier 2004
    Messages
    2 862
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2004
    Messages : 2 862
    Points : 3 609
    Points
    3 609
    Par défaut
    Je ne comprends pas ta question... Quelle commande ?
    Un problème sans solution est un problème mal posé

    Merci de poser vos questions sur le forum, je ne réponds pas aux questions posées par MP.

  15. #15
    Nouveau membre du Club
    Inscrit en
    Octobre 2005
    Messages
    56
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 56
    Points : 28
    Points
    28
    Par défaut
    cette comamnde :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    host ("c:\chemin_de_blat\blat - -f expediteur -t destinataire -server ipserversmtp -port 25 -try 1 -s sujet -body texte_du message");

  16. #16
    Membre expert

    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Janvier 2004
    Messages
    2 862
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2004
    Messages : 2 862
    Points : 3 609
    Points
    3 609
    Par défaut
    Pour la n ième fois, tu ne peux l'utiliser QUE sous SQL*Plus !
    tape là sous SQL*Plus
    Un problème sans solution est un problème mal posé

    Merci de poser vos questions sur le forum, je ne réponds pas aux questions posées par MP.

  17. #17
    Expert éminent sénior
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 075
    Points
    19 075
    Par défaut
    et pas dans du PL/SQL... c'est saoulant ce dialogue de sourd

  18. #18
    Nouveau membre du Club
    Inscrit en
    Octobre 2005
    Messages
    56
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 56
    Points : 28
    Points
    28
    Par défaut
    en admettant que je mette ma commande système dans ma proc. stock. sous forme de chaine de caractère X, est ce que je peux appeler X à partir de sql*plus ?

  19. #19
    CD
    CD est déconnecté
    Membre habitué
    Inscrit en
    Septembre 2004
    Messages
    127
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 127
    Points : 151
    Points
    151
    Par défaut
    Procédure Stockée = PL/SQL

    Procédure Stockée implique PAS DE COMMANDE HOST, même avec du sql dynamique ou quoi que ce soit d'autre.

    Si tu utilises la commande host, c'est UNIQUEMENT sous sql*plus (l'exécutable sqlplus.exe...). Là, tu peux appeler ta commande HOST.

    En résumé :
    - Script SQL = Commande host possible
    - Procédure (ou fonction, on ne sait jamais...) stockée = Commande Host IMPOSSIBLE

  20. #20
    Membre expert

    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Janvier 2004
    Messages
    2 862
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2004
    Messages : 2 862
    Points : 3 609
    Points
    3 609
    Par défaut
    Si tu veux exécuter une commande système dans une procédure stockée (comme tu n'as pas la JVM d'installer) tu dois faire comme cela :
    http://www.developpez.net/forums/vie...highlight=host
    Un problème sans solution est un problème mal posé

    Merci de poser vos questions sur le forum, je ne réponds pas aux questions posées par MP.

Discussions similaires

  1. Réponses: 4
    Dernier message: 04/05/2009, 16h33
  2. Exécuter une commande système
    Par Opera140 dans le forum Débuter
    Réponses: 2
    Dernier message: 21/08/2007, 15h00
  3. Exécuter une commande système avec perl
    Par Olivier Regnier dans le forum Langage
    Réponses: 12
    Dernier message: 08/04/2007, 16h41
  4. [VB.NET] exécuter une command Dos à Partir de Vb.Net
    Par Khalid.bounouader dans le forum Windows Forms
    Réponses: 4
    Dernier message: 27/12/2006, 14h05
  5. Réponses: 9
    Dernier message: 21/06/2006, 16h41

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