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

Administration Oracle Discussion :

Oracle et Mapping Hibernate


Sujet :

Administration Oracle

  1. #1
    Membre confirmé
    Inscrit en
    Octobre 2006
    Messages
    98
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 98
    Par défaut Oracle et Mapping Hibernate
    Bonjour,

    Je ne suis pas sur que ce soit la meilleure section pour un probleme hibernate...

    Alors, je tente de creer un fichier de mapping pour une base Oracle 9i sous eclipse.
    J'ai bien installé les plug ins hibernate nescessaire.
    Je cherche a creer un nouveau fichier de mapping
    Le probleme viens du fait que je donne mes donnees de connection a ma base (URL, user, pass) Je clique sur Refresh, la connection s'effectue avec succes.
    Mais l'interface ne retrouve pas les tables de ma base.
    Je ne peux donc pas creer le mapping.

    Savez vous d'ou cela peux venir ?

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

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    l'utilisateur avec lequel tu te connectes ne doit pas avoir les droits suffisant

  3. #3
    Membre confirmé
    Inscrit en
    Octobre 2006
    Messages
    98
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 98
    Par défaut
    ??
    Ah bon ?
    Pour tant cet utilisateur a tous les droits de lecture et de modif...

    Bon, ben, je teste ca avec l'utilisateur system.

  4. #4
    Membre confirmé
    Inscrit en
    Octobre 2006
    Messages
    98
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 98
    Par défaut
    Je ne comprend pas. mon USER as comme privileges:

    administrateur database trigger
    administrateur resource manager
    alter any : cluster, dimension, index, indextype, library, outline, procedure, role
    alter : rollback segment, session, system, tablespace, user
    create any ; cluster, context, dimension, directory, index, index type, library, operator, outline, procedure, table, trigger.
    create tablespace
    drop any : cluster, context, index, role, table, trigger
    execute any procedure
    insert any table
    unlimited tablespace
    select any : dictionary, sequence, table

    A priori pour sortir la liste des tables il ne devrait avoir besoin que de Select any table non ?

    precision:
    sur toutes les tables de ma base il as les privileges :
    Alter, delete, index, insert, references, select, update...
    et comme role oracle : connect, dba, delete_catalog_role

    --------------------

    Bon, la je viens de lui filer tous les privileges possibles et tous les roles possibles et ca ne pase toujours pas....

    Par contre je ne peux pas lui donner les privileges sur any workspace...
    car grantor and grantee cannot be the same user
    Est ce que ca viens de la?

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

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    c'est bien le owner des objets ?

  6. #6
    Membre confirmé
    Inscrit en
    Octobre 2006
    Messages
    98
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 98
    Par défaut
    Le owner des objets ?
    Je vais regarder mais peut tu expliciter un peu s'il te plait ?
    (je debute )

    Puis je faire cela a partir de la consol oracle entreprise ?
    comment ?

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

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    essaye de te connecter avec l'utilisateur qui est propriétaire des tables

  8. #8
    Membre confirmé
    Inscrit en
    Octobre 2006
    Messages
    98
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 98
    Par défaut
    alors,
    au depart j'ai 3 utilisateurs :
    sys, system
    et moi, que j'ai crée...

    Le refresh avec moi et system ne me ramene aucune table.
    je ne peux cependant pas faire de refresh a l'ecran d'hibernate avec sys car il demande que la connection avec sys se fasse en sysdba ou sysoper...

    Mes creations de tables se font de cette maniere:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Create table "c_client" (
    	"C_CLIENT_CODE" 	number(10) NOT NULL ,
    	"C_CONTACT_CODE"	number(10) NOT NULL	,
    	"C_CLIENT_NAME" 	char(80)			,
    CONSTRAINT PK_C_client PRIMARY KEY (C_CLIENT_CODE)
    ) ;
    faut il que je precise l'owner a ce niveau ?

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

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    Pour faire ton CREATE TABLE tu te connectes avec un utilisateur qui doit probablement être l'utilisateur à utiliser dans Hibernate non ?

  10. #10
    Membre confirmé
    Inscrit en
    Octobre 2006
    Messages
    98
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 98
    Par défaut
    Merci pour ta patience, excuse ma newbitude, on m'a annoncé la semaine derniere que je devenais DBA oracle.
    Apprendre oracle en solo est assez hardu.

    Alors je me connecte en utilisant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Connect vodka/pass@vodka.theia.local;
    et ensuite je cree ma base
    L'url que je fournis a Hibernate est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    jdbc:oracle:thin:@localhost:1521:vodka
    descripteur tns:
    (DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=THEIA9)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=VODKA)))

    Le nom d'utilisateur est le meme que le nom du service oracle.

    sous SQL+, je me suis connecté avec la ligne ci-dessus, donc l'utilisateur vodka.
    puis j'ai fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Drop table "c_client";
     
    Create table "c_client" (
    	"C_CLIENT_CODE" 	number(10) NOT NULL ,
    	"C_CONTACT_CODE"	number(10) NOT NULL	,
    	"C_CLIENT_NAME" 	char(80)			,
    CONSTRAINT PK_C_client PRIMARY KEY (C_CLIENT_CODE)
    ) ;
    SQL+ me confirme que la table as ete supprimée puis crée.
    Cependant sous hibernate avec le meme utilisateur, il ne me sors toujours aucunes tables.
    Est ce que cela viens de la difference entre la connection qui se fait sur vodka.theia.local
    et le nom du service dans l'url qui est juste vodka ???
    (si je fournis vodka.theia.local comme nom de service dans l'url il me renvois une erreur)
    De quelles infos pourrais tu avoir besoin pour m'aider a resoudre ce probleme ?

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

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    THEIA9=localhost ?

  12. #12
    Membre confirmé
    Inscrit en
    Octobre 2006
    Messages
    98
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 98
    Par défaut
    oui, c'est le nom de mon ordinateur.
    Donc le localhost. d'ailleurs si je remplace localhost par theia9 dans l'url la connection s'effectue toujours.

    Ce qui est flou pourm oi c'est aussi le fait que dans la consol oracle entreprise, ma base comporte enormement de schema dont le Vodka (lie a l'utilisateur vodka)contenant ma base...
    Est que je peux fournir a hibernate le schema de ma base ou quelque chose dans le genre ?

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

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    bon bah là je séche... faut voir avec le support IBM

  14. #14
    Membre confirmé
    Inscrit en
    Octobre 2006
    Messages
    98
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 98
    Par défaut
    aaargghhh !!!!

    malgres mes faibles capacités c'est vrai que je ne vois pas non plus ce qui bloque....
    a priori j'ai tout fais bien, selon les divers tutos que j'ai suivi...
    Peut etre faut il que je reprenne tout mon projet a partir de la base.
    Je te tiens au courant au cas ou.

    Merci encore

  15. #15
    Membre confirmé
    Inscrit en
    Octobre 2006
    Messages
    98
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 98
    Par défaut
    Je pense a quelque chose qui peux etre important:

    Pour etre propre j'ai cree un tablespace expres pour mon user (et donc ma base),
    est ce que c'est cela qui peux provoquer le fait qu' hibernate ne trouve pas les tables de ma base alors qu'il se connecte sans probleme a celle ci ????

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

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    probablement pas

  17. #17
    Membre confirmé
    Inscrit en
    Octobre 2006
    Messages
    98
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 98
    Par défaut
    re re re hello.

    En fait j'ai mis la main sur un sensei en Hibernate qui m'a conseillé de changer mes jar, pour des problemes de compatibilités avec oracle (etc etc....)
    Apparement, ca fonctionne mieux, ce n'etait donc pas un probleme de base oracle mais un probleme d'Hibernate

    Bon, ca avance....

    Là j'ai encore un bug, mais il viens d'Hibernate donc je passe dans le salon hibernate.

    Merci tout de meme de m'avoir accompagné dans cet aprem de galere, ca m'as permis de mettre de coté plusieurs possibilités de bug.

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

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    j'ai eu une expérience douloureuse avec Hibernate et je compatis donc complétement

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

Discussions similaires

  1. Probléme de mapping hibernate et oracle 11g
    Par fetano dans le forum Hibernate
    Réponses: 1
    Dernier message: 10/08/2014, 19h09
  2. Mapping Hibernate Date avec champ date Oracle 10g
    Par tdeco dans le forum Hibernate
    Réponses: 0
    Dernier message: 25/01/2011, 10h28
  3. Réponses: 7
    Dernier message: 07/12/2009, 22h49
  4. Mapping hibernate Oracle
    Par FullOver dans le forum Hibernate
    Réponses: 1
    Dernier message: 04/04/2008, 11h40
  5. mapping hibernate
    Par enimiste dans le forum Hibernate
    Réponses: 11
    Dernier message: 16/05/2006, 11h20

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