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

SQL Oracle Discussion :

Une table deux clés primaire


Sujet :

SQL Oracle

  1. #1
    Membre régulier
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2012
    Messages
    136
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Service public

    Informations forums :
    Inscription : Juin 2012
    Messages : 136
    Points : 75
    Points
    75
    Par défaut Une table deux clés primaire
    Bonjour,

    J'ai une table qui a un index unique (entite, annee, no_rnc, no_xfo)

    Est ce que je peux avoir deux index sur une table, le deuxième index serait (entite, annee, no_rnc, no_comm)
    Je pourrais faire un update, insert, select.. soit avec le premier index ou le deuxième.

    Le champ no_comm n'existe pas dans la table je dois le créer.

    Merci

  2. #2
    Membre régulier
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mai 2014
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Canada

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Santé

    Informations forums :
    Inscription : Mai 2014
    Messages : 31
    Points : 124
    Points
    124
    Par défaut deux index.. mais un seul primaire
    Bonjour à vous,

    Vous pouvez créer plusieurs index sur la même table.. mais un seul peut être primaire.

    Les deux peuvent cependant être unique et not null pour toutes les colonnes.

    Il y a aussi la possibilité d'avoir un primaire et l'autre unique et not null pour toutes les colonnes.

    Mais avant de créer ce second index... vous pouvez aussi regarder si le plan d'exécution est bon même sans ce nouvel index.

    J'ai remarqué que les deux index comportent les mêmes colonnes à gauche... donc dans les première colonne..

    Il y a de très bonne chance que l'index puisse être utilisé avec les deux requêtes (avec entite, annee, no_rnc, no_xfo et avec entite, annee, no_rnc, no_comm).

    Bonne chance.

    Sylvain

  3. #3
    Expert éminent sénior Avatar de mnitu
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2007
    Messages
    5 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2007
    Messages : 5 611
    Points : 11 252
    Points
    11 252
    Par défaut
    Citation Envoyé par struchon Voir le message
    ...
    Vous pouvez créer plusieurs index sur la même table.. mais un seul peut être primaire.
    ...
    Un index n'est jamais primaire. Les indexes sont des structures très différentes des contraintes!

Discussions similaires

  1. Table avec deux clés primaires SQL
    Par iimen20 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 01/08/2013, 10h17
  2. Supprimer dans table à deux clés primaires
    Par la_zbou dans le forum Débuter
    Réponses: 2
    Dernier message: 12/06/2013, 21h21
  3. Create Table avec deux clés primaires
    Par ulysse031 dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 03/05/2007, 14h51
  4. Contrôle de doublon dans une datawindow issue d'une table à deux clés primaires
    Par Maman Kakalé Néhémiya dans le forum Powerbuilder
    Réponses: 4
    Dernier message: 16/08/2006, 21h28
  5. Requête sur table à double clés primaires
    Par darkian dans le forum Langage SQL
    Réponses: 4
    Dernier message: 04/03/2005, 17h28

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