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

Adaptive Server Enterprise Sybase Discussion :

ASE et clefs primaire


Sujet :

Adaptive Server Enterprise Sybase

  1. #1
    Membre du Club
    Inscrit en
    Juillet 2002
    Messages
    82
    Détails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 82
    Points : 44
    Points
    44
    Par défaut ASE et clefs primaire
    Bonjour a tous,

    j'ai une base de donnée sous ASE qui tourne depuis bientôt 10 ans sans aucun problème, et je viens de me rendre compte qu'aucune clefs primaire n'avaient jamais été définie. J'ai en revanche une colonne ID pour chaque table qui assure l'unicité de l'entrée.


    est ce que vous pouvez me dire ce que je risque a ne pas en mettre?
    et également ce que cela pourrait apporter en terme de performance.

    Merci d'avance a tous.

    Mike

  2. #2
    Membre chevronné

    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 307
    Détails du profil
    Informations personnelles :
    Âge : 64
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 307
    Points : 1 828
    Points
    1 828
    Par défaut
    Si tu as un index unique sur chaque table tu ne cours pas vraiment de risque.
    Ajouter une contrainte "primary key" dans cette situation a plus une fonction de documentation que fonctionnelle.

    Par contre, avoir des identifiants synthétiques sur toutes les tables, avec des indexes dessus, plutôt que sur les vraies colonnes peut causer des problèmes de doublons - par example si j'ai une table EMPLOYE avec EMP_ID et EMP_NAME, avec EMP_ID étant un identifant synthétique généré automatiquement, et avec un index unique sur EMP_ID mais pas sur EMP_NAME je peux insérer deux fois le même EMP_NAME.

    Vu que ton système tourne depuis dix ans je doute que tu ais ce genre de problème - tu les aurais déjà vu - mais je pense que c'est utile de souligner que les identifiants synthétique (aka surrogate key, en anglais) doivent être utilisés avec prudence.

    Michael
    Michael Peppler
    Membre de TeamSybase - www.teamsybase.com

    "A successful [software] tool is one that was used to do something undreamed of by its author." -- S. C. Johnson

Discussions similaires

  1. Générer une clef primaire aleatoire?
    Par 12_darte_12 dans le forum Administration
    Réponses: 4
    Dernier message: 18/07/2005, 18h10
  2. Clef primaire en nvarchar
    Par Mouse dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 07/04/2005, 15h50
  3. Comment comment définir une clef primaire dans une table??
    Par nek_kro_kvlt dans le forum Bases de données
    Réponses: 4
    Dernier message: 07/02/2005, 21h06
  4. [VB.NET] [ADO.NET] Clef primaire auto incrémenté
    Par Guld dans le forum Accès aux données
    Réponses: 4
    Dernier message: 25/09/2004, 20h46
  5. récupérer la clef primaire d'une table
    Par orionis69 dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 28/02/2004, 13h00

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