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

Interfaces de programmation Oracle Discussion :

[PRO*C][11g] Erreurs précompilations


Sujet :

Interfaces de programmation Oracle

  1. #1
    Rédacteur
    Avatar de Vincent Rogier
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    2 373
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 2 373
    Par défaut [PRO*C][11g] Erreurs précompilations
    Bonsoir,

    J'ai installé un client 11g sur ma machine de dev (MS Vista Pro) qui héberge déja 1 serveur 10g et 5 clients (7.3.4, 8.1.7, 9.0.0, 9.2.0 et 10.2.0) afin tester nos applications (certaines utilisent OCI et d'autres PRO*C).

    L'installation s'est bien déroulée et les application qui utilisent OCI compilent sans soucis.

    Mais la grosse déconfiture viens de PRO*C. Les sources qui sont précompilés sans aucun souci avec les versions de PRO*C 8i à 10g (PRO*C 7.34 ne tourne pas sous Vista) sont refusés par PRO*C 11g.

    tous les EXEC SQL .... d'options et de contrôle (connect, enable, ...) passent mais tous les EXEC SQL suivi d'une requête SQL retournent une erreur.

    Exemple :

    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
     
    char *oracle_date_courante()
    {
        static char buf[SIZE_ORADATE+1];
     
        EXEC SQL
            select sysdate into :buf from DUAL;
     
        if(ORA_SQLERROR())
        {
            oracle_error("sélection date courante");
            buf[0]=0;
        }
     
        return buf;
    }
    Provoque l'erreur suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    Erreur Ó la ligne 105, colonne 2 dans le fichier src\oracle.pc
            EXEC SQL
    .1
    PLS-S-00000, SQL Statement ignored
    erreur sÚmantique Ó la ligne 105, colonne 2, fichier src\oracle.pc:
            EXEC SQL
    .1
    PCC-S-02346, PL/SQL a trouvÚ des erreurs sÚmantiques
    J'ai réinstallé deux fois le client, vérifié toute les nouvelles options de la 11g... C'est réellement incomprémensible !

    Voici le fichier de config fourni à PRO*C :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    MODE=ORACLE
    DBMS=V7
    CODE=ANSI_C
    SYS_INCLUDE=C:\Users\vincent\Data\Dev\Lib\msvt\
    INCLUDE=C:\Users\vincent\Data\Dev\Lib\vr\
    INCLUDE=src\
    INCLUDE=C:\Users\vincent\Data\Dev\Lib\vr\c\
    INCLUDE=c:\oracle\ora11g\precomp\public\
    PARSE=FULL
    THREADS=YES
    USERID=winrest/fsi@winrest
    SQLCHECK=SEMANTICS
    J'utilise VS2005, je compile les 4 autres client sans soucis mais avec la 11g, j'ai ce maudit PLS-S-00000...

    J'ai essayé en ligne de commande sans plus de réussite...
    J'ai essayé avec plusieurs charset et type de retour chariots différent... rien n'y fait !

    EDIT (10/11/2007) : Si je passe le SQLCHECK à un niveau plus faible, ces erreurs disparaissent mais comme nos sources comportent des mots clés PL/SQL, PROC*C refuse alors de les précompiler si SQLCHECK n'est pas positionné sur SEMANTICS....
    Bon dieu, Oracle nous aurait refilé un PRO*C fouareux ?

    Bon, quelqu'un a une idée avant que je me résigne a ouvrir un ticket sur OTN ?
    Vincent Rogier.

    Rubrique ORACLE : Accueil - Forum - Tutoriels - FAQ - Livres - Blog

    Vous voulez contribuer à la rubrique Oracle ? Contactez la rubrique !

    OCILIB (C Driver for Oracle)

    Librairie C Open Source multi-plateformes pour accéder et manipuler des bases de données Oracle

  2. #2
    Rédacteur
    Avatar de Vincent Rogier
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    2 373
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 2 373
    Par défaut

    Ben alors, personne n'a esssayé PRO*C de la 11g ?

    Vincent Rogier.

    Rubrique ORACLE : Accueil - Forum - Tutoriels - FAQ - Livres - Blog

    Vous voulez contribuer à la rubrique Oracle ? Contactez la rubrique !

    OCILIB (C Driver for Oracle)

    Librairie C Open Source multi-plateformes pour accéder et manipuler des bases de données Oracle

  3. #3
    Membre Expert
    Avatar de LeoAnderson
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 2 938
    Par défaut
    Le problème de la 11g, c'est que c'est une bêta qui ne le dit pas.

    Avez-vous lu http://download.oracle.com/docs/cd/B...at.htm#i634207 ?

    Pourquoi n'utilisez-vous pas VS 2000 ou 2003 ?
    êtes-vous sûr que la version 2005 est certifiée ?

  4. #4
    Rédacteur
    Avatar de Vincent Rogier
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    2 373
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 2 373
    Par défaut
    Nos projets ont compilé avec PRO*C (7.34 à 10g) depuis des annèes avec VC6 et ensuite avec VS2005 depuis 2 ans !

    Cela n'est pas un souci de VS car si je lance PRO*C 11g en ligne de commande, le résultat est le même !


    Ce qui me surpend le plus, c'est que c'est vraiment gros comme une maison !

    Et je vois pas comment Oracle a pu laisser passer ca ! Ils doivent manquer de testeurs !
    Vincent Rogier.

    Rubrique ORACLE : Accueil - Forum - Tutoriels - FAQ - Livres - Blog

    Vous voulez contribuer à la rubrique Oracle ? Contactez la rubrique !

    OCILIB (C Driver for Oracle)

    Librairie C Open Source multi-plateformes pour accéder et manipuler des bases de données Oracle

  5. #5
    Membre Expert
    Avatar de LeoAnderson
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 2 938
    Par défaut
    Avez-vous lu la note 1018121.102 ?
    et la doc pré-citée ?

  6. #6
    Rédacteur
    Avatar de Vincent Rogier
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    2 373
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 2 373
    Par défaut
    Avez-vous lu la note 1018121.102 ?
    ?????


    Bon, mettons de coté VS... Cela n'est pas le problème...

    Si je lance pro*c directement j'ai les mêmes erreurs, donc exit VS

    Le souci vient de PRO*C, de son install ou des nouvelles options...
    Vincent Rogier.

    Rubrique ORACLE : Accueil - Forum - Tutoriels - FAQ - Livres - Blog

    Vous voulez contribuer à la rubrique Oracle ? Contactez la rubrique !

    OCILIB (C Driver for Oracle)

    Librairie C Open Source multi-plateformes pour accéder et manipuler des bases de données Oracle

  7. #7
    Membre Expert
    Avatar de LeoAnderson
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 2 938
    Par défaut
    Avez-vous essayer de compiler tous les samples fournis par Oracle ? (En 9i, c'était une option de l'install, en 10g il fallait le Companion CD et en 11g, j'ignore où ils se trouvent, j'attend la 11.2 ! )

  8. #8
    Rédacteur
    Avatar de Vincent Rogier
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    2 373
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 2 373
    Par défaut
    Bon, j'ai testé les exemple de proc*c fournis avec la 8i.
    J'ai donc utilisé l'exemple de base ($ORACLE_HOME\precomp\demo\proc\sample).

    Je modifie le projet pour utiliser le pro*c de la 11g.
    Je lance la compilation... tout se passe bien !

    Mais ce sample ne fournit aucune option au à pro*c sauf (include=xxx)... Trop simple !

    Bon, je rajoute sqlcheck=semantics et userid=x/y@z

    ET boum les mêmes erreurs que j'ai avec mes sources!

    Donc, il s'agit bien un sacré bug pro*c 11g que je vais remonter dès lundi matin à Oracle !

    Donc pour les utilisateurs de pro*c, la 11.1.0.6 n'est pas encore exploitable !
    Vincent Rogier.

    Rubrique ORACLE : Accueil - Forum - Tutoriels - FAQ - Livres - Blog

    Vous voulez contribuer à la rubrique Oracle ? Contactez la rubrique !

    OCILIB (C Driver for Oracle)

    Librairie C Open Source multi-plateformes pour accéder et manipuler des bases de données Oracle

  9. #9
    Membre Expert
    Avatar de LeoAnderson
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 2 938
    Par défaut
    mais testez-donc le pro*c de la 11g avec les examples de la 11g !

    si ça se trouve, vous y trouverez une nouvelle syntaxe, de nouveaux paramètres...

    en même temps, je dis pas que la 11g est mature et fonctionnelle !
    je dis juste qu'il faut valider avec les bons exemples...

  10. #10
    Rédacteur
    Avatar de Vincent Rogier
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    2 373
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 2 373
    Par défaut
    J'ai parcouru les docs pro*c de la 11g -> Rien de bien méchant : Oracle n'a pas réinventé la roue avec pro*c 11g et a juste apporté 2-3 nouveautés, c'est tout !

    De plus, si des codes sources qui compilent depuis oracle 7.3.4 -> 10g (avec les mêmes options) ne fonctionnaient plus tout d'un coup sous 11g (sans même qu'Oracle mentionne tout changement notable dans les compatibilités), cela serait suicidaire pour Oracle.

    Des milliers d'applis ont été developpées avec pro*c ...


    De plus, télécharger 500 Mo de Companion CD pour 1 source Pro*c de 80 lignes qui me donnera le même résultat ? ... NON !

    Dès lundi j'ouvre un ticket chez Oracle !

    Néanmoins, si quelqu'un pouvait sortir un lapin magique de son chapeau pour que je puisse précompiler, cela m'arrangerai !
    Vincent Rogier.

    Rubrique ORACLE : Accueil - Forum - Tutoriels - FAQ - Livres - Blog

    Vous voulez contribuer à la rubrique Oracle ? Contactez la rubrique !

    OCILIB (C Driver for Oracle)

    Librairie C Open Source multi-plateformes pour accéder et manipuler des bases de données Oracle

  11. #11
    Membre Expert
    Avatar de LeoAnderson
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 2 938
    Par défaut
    IL n'y a pas que les sources qui sont intérêssantes
    il y a aussi et surtout le makefile

    Et lui, il a changé selon les versions...

    Par exemple, sur Solaris, en 9i on avait 2 distributions : 32 ou 64 bits
    En 10g, une seule installation pour les 2 modes => nouveaux makefiles !

    De toute façon, si vous voulez ouvrir un SR, la 1ère question du support sera : "est-ce que les exemples de la 11g avec les makefile de la 11g fonctionnent ?"

    Et un peu de rigueur à la place de magie ça ne nuit pas !

  12. #12
    Rédacteur
    Avatar de Vincent Rogier
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    2 373
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 2 373
    Par défaut
    pourquoi parler de makefile ?

    la simple commande suffit pour mettre en évidence le souci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    >$ORACLE_HOME/bin/proc $SOURCE_FILE CONFIG=$CONFIG_FILE
    OK... si ca peux rendre le monde meilleur, je vais télécharger le companion CD de la 11g.

    Mais encore une fois, c'est pas une histoire de VS, ni de makefile, ni de version 32/64 bits, ...

    Non, le souci c'est le binaire pro*c 11g avec l'option 'sqlcheck=semantics' !
    Vincent Rogier.

    Rubrique ORACLE : Accueil - Forum - Tutoriels - FAQ - Livres - Blog

    Vous voulez contribuer à la rubrique Oracle ? Contactez la rubrique !

    OCILIB (C Driver for Oracle)

    Librairie C Open Source multi-plateformes pour accéder et manipuler des bases de données Oracle

  13. #13
    Rédacteur
    Avatar de Vincent Rogier
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    2 373
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 2 373
    Par défaut
    bon j'ai téléchargé les samples de la 11g qui sont en parti les mêmes que ceux de 8i avec les mêmes dates de fichiers....

    Bon, j'ai également posté sur le forum database d'oracle...

    A voir...
    Vincent Rogier.

    Rubrique ORACLE : Accueil - Forum - Tutoriels - FAQ - Livres - Blog

    Vous voulez contribuer à la rubrique Oracle ? Contactez la rubrique !

    OCILIB (C Driver for Oracle)

    Librairie C Open Source multi-plateformes pour accéder et manipuler des bases de données Oracle

Discussions similaires

  1. Réponses: 2
    Dernier message: 24/03/2011, 15h11
  2. [Oracle 11g] erreur d'adaptateur de protocole, de résolution de nom
    Par maniolo dans le forum Connexions aux bases de données
    Réponses: 1
    Dernier message: 10/02/2009, 19h10
  3. Installation oracle 11g : erreur OUI-10133
    Par shada dans le forum Installation
    Réponses: 1
    Dernier message: 09/11/2008, 06h13
  4. [PRO*C] CoreDump - Erreur OCI-24550
    Par cokmes dans le forum Interfaces de programmation
    Réponses: 2
    Dernier message: 06/05/2008, 20h14
  5. [PRO*C] comp erreur sur object types /AQ / ALLOCATE
    Par ydelanoe dans le forum Interfaces de programmation
    Réponses: 0
    Dernier message: 22/10/2007, 17h36

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