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 :

Impossible de compiler package pl/sql


Sujet :

PL/SQL Oracle

  1. #1
    Membre éclairé
    Inscrit en
    Août 2009
    Messages
    273
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 273
    Par défaut Impossible de compiler package pl/sql
    Bonjour,

    Je suis bloqué sur une erreur pl/sql que je n'arrive pas à comprendre car lorsque je compile la spécification d'un package j'ai les erreurs suivantes :

    Erreur(13,2): PL/SQL: Declaration ignored
    Erreur(14,13): PLS-00201: l'identificateur 'SID_ADR_ROW_LIST' doit être déclaré

    Lorsque je compile le body du package, j'ai les erreurs suivantes :

    Erreur(1): PL/SQL: Compilation unit analysis terminated
    Erreur(2,24): PLS-00905: l'objet BBB_CID.CID_ADR_XML_API n'est pas valide
    Erreur(2,24): PLS-00304: impossible de compiler le corps de 'CID_ADR_XML_API' sans sa spécification

    Merci d'avance !

  2. #2
    Membre chevronné

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    507
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 507
    Par défaut
    Bonjour.
    Si la spécification n'est pas compilée, le body ne peut pas l'être.
    Pouvez-vous mettre le code de la spécification?

  3. #3
    Membre éclairé
    Inscrit en
    Août 2009
    Messages
    273
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 273
    Par défaut
    CREATE OR REPLACE PACKAGE "BBB_CID"."CID_ADR_XML_API"
    Is
    Function Version Return Varchar2;

    Function CID_ADR_Explode (pXml In Clob)
    Return CID_ADR_Row_List pipelined;

    Function CID_ADR_setXml ( pXmlDoc In Clob,
    pRetour Out Nocopy Varchar2 )
    Return Number;

    Procedure setCID_ADR ( pCID_ADR In Clob );

    Function getCID_ADR(pKEY In Number, pWithPkValue In Number Default 0, pReferences In Number Default 1)
    Return Clob;

    Procedure exportCID_ADR(pKEY In VarChar2 Default Null, pWithPkValue In Number Default 0, pReferences In Number Default 1);

    Procedure importCID_ADR(pFileName In VarChar2);

    End CID_ADR_XML_API;
    /

  4. #4
    Membre chevronné Avatar de xdescamp
    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    300
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2008
    Messages : 300
    Par défaut
    Bonjour,
    Il n'y a pas de "SID_ADR_ROW_LIST" dans le code que vous avez posté.
    Par contre il y a un "CID_ADR_Row_List".
    Il n'y aurait une faute de frappe quelque part ?

  5. #5
    Membre éclairé
    Inscrit en
    Août 2009
    Messages
    273
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 273
    Par défaut
    NON C'EST BIEN CID JE ME SUIS TROMPE EN RECOPIANT L'ERREUR

  6. #6
    Membre chevronné

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    507
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 507
    Par défaut
    CID_ADR_Row_List est-il déclaré quelque part en dehors du package?

    Voir un exemple ICI. L'objet doit exister au préalable, et être visible par le package.

  7. #7
    Membre éclairé
    Inscrit en
    Août 2009
    Messages
    273
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 273
    Par défaut
    Désolé je ne comprends pas comment ça déclaré en dehors du package ?

  8. #8
    Membre chevronné Avatar de xdescamp
    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    300
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2008
    Messages : 300
    Par défaut
    Le type "CID_ADR_Row_List" doit exister dans la base avec un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CREATE TYPE CID_ADR_Row_List ...
    Ce type doit être utilisable par "BBB_CID" pour qu'il puisse s'en servir dans le package.

    Regarde bien le lien que t'a donné GoLDoZ, il donne un exemple détaillé.

  9. #9
    Membre éclairé
    Inscrit en
    Août 2009
    Messages
    273
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 273
    Par défaut
    Donc que dois je faire pour corriger ça ?

  10. #10
    Membre chevronné

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    507
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 507
    Par défaut
    La fonction pipelined utilise un objet extérieur au package. Vous devez donc créer cet objet avant de compiler le package.

  11. #11
    Membre éclairé
    Inscrit en
    Août 2009
    Messages
    273
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 273
    Par défaut
    Donc c'est pas un problème de droits que j'ai ?

  12. #12
    Membre éclairé
    Inscrit en
    Août 2009
    Messages
    273
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 273
    Par défaut
    Donc je fais comme ceci ?

    SQL> create type MtSal as object (numemp number(4), salaire number(7,2) ) ;
    2 /

    Type créé.

    SQL> create type MtSalTab as table of MtSal ;
    2 /

    Type créé

  13. #13
    Membre chevronné Avatar de xdescamp
    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    300
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2008
    Messages : 300
    Par défaut
    Oui, en l'adaptant à ton cas (nom des types, structure) et sous le user "BBB_CID" (ou un autre mais il faudra alors donner les droits à "BBB_CID")

  14. #14
    Membre éclairé
    Inscrit en
    Août 2009
    Messages
    273
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 273
    Par défaut
    Je pense que je n'ai pas bien compris ce que t'as mis dans la parenthèse. Tu me dis de créer soit l'objet soit donner des droits ou faire les 2 ?

  15. #15
    Membre chevronné

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    507
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 507
    Par défaut
    C'est pourtant clair...

    Vu que tu crées ton package sous le user (schéma) BBB_CID, il faut créer l'objet sous le même schéma, ou bien le créer ailleurs et donner les droits au user BBB_CID.

  16. #16
    Membre éclairé
    Inscrit en
    Août 2009
    Messages
    273
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 273
    Par défaut
    OK merci là c'est plus clair mais j'espère que ça va marcher sinon est ce que je pourrai te solliciter à nouveau au cas où je n'y parviens pas ?

  17. #17
    Membre chevronné

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    507
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 507
    Par défaut
    Avec l'exemple de Sheik, tu devrais y arriver.

  18. #18
    Membre éclairé
    Inscrit en
    Août 2009
    Messages
    273
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 273
    Par défaut
    Désolé je n'ai pas pu dire merci car je n'arrivais plus à accéder au forum.

    Merci beaucoup !

Discussions similaires

  1. Problème de compilation entre package PL/SQL
    Par sarichard75017 dans le forum PL/SQL
    Réponses: 2
    Dernier message: 19/06/2009, 09h44
  2. [ORA-04043] Compilation package impossible
    Par gigigao dans le forum SQL
    Réponses: 6
    Dernier message: 24/10/2007, 10h48
  3. [Dev-cpp] Impossible de compiler le projet !
    Par Franck.H dans le forum Dev-C++
    Réponses: 5
    Dernier message: 18/10/2005, 11h55
  4. [POI] echec de compil, package introuvable
    Par hugo123 dans le forum Documents
    Réponses: 2
    Dernier message: 05/10/2005, 11h33
  5. [JOnAS][JOPE] impossible de compiler un bean
    Par Raylemon dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 05/04/2005, 16h48

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