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

Hibernate Java Discussion :

many-to-many and index creation.


Sujet :

Hibernate Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Inscrit en
    Septembre 2006
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 10
    Par défaut many-to-many and index creation.
    Bonjour

    Est-ce que c'est possible de spécifier la création d'index
    sur les relations many-to-many ?

    Par exemple, pour la table :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    create table T_PERSONADDRESS (
    PERSON_ID number(10,0) not null,
    ADDRESS_ID number(10,0) not null,
    primary key (PERSON_ID, ADDRESS_ID)
    );
    Je voudrais bien avoir la création d'indexs sur chaque colonne
    de la clé primaire comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    CREATE INDEX INDEX1 ON T_PERSONADDRESS(PERSON_ID);
    CREATE INDEX INDEX2 ON T_PERSONADDRESS(ADDRESS_ID);
    Ces index sont importants car pour une requête du style
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select * from t_personaddress where person_id = ? ;
    Oracle va utiliser un "full fast index scan" s'il n'y a pas d'index.
    Avec ces indexes, il va utiliser un "table access by index row id" et
    ce sera bien plus rapide.

    Mais je n'arrive pas à indiquer ces index dans le mapping hibernate.
    J'ai l'impression que c'est pas possible.

  2. #2
    Membre Expert
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 276
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 276
    Par défaut
    Il me semble qu'il n'est pas nécessaire de définir des index sur des clefs primaires.

  3. #3
    Membre habitué
    Inscrit en
    Septembre 2006
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 10
    Par défaut
    Ben là, y-a un index induit par la clé primaire mais cet index porte
    sur les 2 colonnes( PERSON_ID, ADDRESS_ID ).

    Pour moi, il faut en plus deux index particuliers, un pour chaque colonne.

    Pour preuve, avec ces index en plus, Oracle n'a pas le même plan
    d'éxécution.

Discussions similaires

  1. Un peu de mal a comprendre le concepte "one-to-many" et "many-to-many"
    Par chriscoolletoubibe dans le forum Hibernate
    Réponses: 4
    Dernier message: 29/03/2007, 18h50
  2. [hibernate 3] mapping many-to-many
    Par darkyspirit dans le forum Hibernate
    Réponses: 4
    Dernier message: 29/12/2006, 19h37
  3. [Hibernate] delete sur un many-to-many
    Par Gob4 dans le forum Hibernate
    Réponses: 1
    Dernier message: 10/05/2006, 16h26
  4. [EJB2.1 Entity] [XDoclet][JBoss] CMR - Many to Many Relation
    Par dauggui dans le forum Java EE
    Réponses: 4
    Dernier message: 24/04/2006, 11h45
  5. [hibernate]relation many-to-many
    Par quilo dans le forum Hibernate
    Réponses: 5
    Dernier message: 20/12/2005, 10h07

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