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

PL/SQL Oracle Discussion :

Execute DDL avec un script PL/SQL


Sujet :

PL/SQL Oracle

  1. #1
    Membre du Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2011
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2011
    Messages : 93
    Points : 53
    Points
    53
    Par défaut Execute DDL avec un script PL/SQL
    Bonjour,

    j'ai un script pour créer des tables selon quelques critères, ce script ça marche.

    mais ne sont pas lié à mon schéma,

    dans certains tutoriels, je trouve qu'on doit passer une une procédure "execute ddl".

    Je cherche à exécuter la procédure "execute ddl", mais je n'arrive, merci de m'aider.

    voici mon code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    CREATE OR REPLACE PROCEDURE execute_ddl(str varchar2) as
    cur integer;
    ret integer;
    begin
    cur :=sys.dbms_SQL.OPEN_CURSOR;
    sys.dbms_SQL.PARSE(cur, str, 2);
    ret :=sys.dbms_SQL.EXECUTE(cur);
    sys.dbms_SQL.CLOSE_CURSOR(cur);
    end;
    /
    ++ceci me donne "Procedure created".

    **Mais lorsque je fais : exec execute_ddl;

    ===>>Me génère le msg d'erreur:

    ORA-06550: Ligne 2, colonne 7 :
    PLS-00306: numéro ou types d'arguments erronés dans appel à 'EXECUTE_DDL'
    ORA-06550: Ligne 2, colonne 7 :
    PL/SQL: Statement ignored

    Merci d'avance.

  2. #2
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Customer Success Manager @Vertica
    Inscrit en
    Septembre 2008
    Messages
    8 452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Customer Success Manager @Vertica
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 452
    Points : 17 820
    Points
    17 820
    Par défaut
    Votre procédure requiert un paramètre, mais quand vous l'exécutez vous n'en avez mis aucun.

  3. #3
    Membre du Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2011
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2011
    Messages : 93
    Points : 53
    Points
    53
    Par défaut Execute DDL avec un script PL/SQL
    Bonjour,

    je me demande est ce possible d'utiliser une variable globale pour le passer en paramètre.

    et si possible de me proposer un bout de code pour déclarer cet variable.


    Merci bcp.

  4. #4
    Membre actif
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2011
    Messages
    146
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2011
    Messages : 146
    Points : 263
    Points
    263
    Par défaut
    Bonjour,

    le parametre est déclaré ici :

    execute_ddl(str varchar2)
    pour l'appel :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    BEGIN
          execute_ddl('SELECT NULL FROM DUAL');
    END;
    /
    http://sheikyerbouti.developpez.com/pl_sql/
    Cordialement.

  5. #5
    Membre du Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2011
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2011
    Messages : 93
    Points : 53
    Points
    53
    Par défaut Execute DDL avec un script PL/SQL
    Bonjour,

    ça marche, merci bcp.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. execution d'un fichier script sql avec talend
    Par sinoun dans le forum Développement de jobs
    Réponses: 2
    Dernier message: 26/07/2011, 14h46
  2. execution partielle d'un script PL/SQL
    Par dyvim dans le forum PL/SQL
    Réponses: 24
    Dernier message: 29/12/2005, 11h33
  3. Interraction avec un script PL/SQL
    Par duelooser dans le forum PL/SQL
    Réponses: 9
    Dernier message: 27/10/2005, 16h07
  4. Execution Script PL/SQL
    Par hair_peace dans le forum PL/SQL
    Réponses: 13
    Dernier message: 29/06/2005, 10h55
  5. Pb d'execution de requete avec un script php
    Par ythierrin dans le forum Requêtes
    Réponses: 3
    Dernier message: 22/08/2003, 14h34

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