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

 MySQL Discussion :

Valeur unique dans trois champs différents


Sujet :

MySQL

  1. #1
    Membre averti
    Homme Profil pro
    Inscrit en
    Mai 2004
    Messages
    803
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 803
    Points : 356
    Points
    356
    Par défaut Valeur unique dans trois champs différents
    Bonjour,

    Dans ma table 'entreprise', j'ai trois champs pouvant contenir une n° de téléphone : tel1, tel2, tel3, tous en varchar.

    Un n° de téléphone doit être unique, à savoir qu'il ne peut se retrouver qu'une seule fois dans la table soit dans tel1, soit dans tel2, soit dans tel3 (il ne peut pas par exemple se retrouver dans un enregistrement dans tel1 et dans un autre enregistrement dans tel2).

    Est-il possible de paramétrer cette unicité dans la table?

    Merci d'avance pour vos réponses.

  2. #2
    Expert éminent sénior
    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 803
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 803
    Points : 34 074
    Points
    34 074
    Billets dans le blog
    14
    Par défaut
    Puisque une entreprise peut avoir plusieurs numéros de téléphone et qu'un numéro de téléphone n'appartient qu'à une seule entreprise, tu as le MCD suivant :
    entreprise -0,n----avoir----1,1- num_tel

    Ce qui donne les tables suivantes :
    entreprise (ent_id, ent_nom...)
    num_tel (tel_id, tel_id_entreprise, tel_numero...)

    Autrement dit, il faut externaliser les numéros de téléphone.

    Avec la structure ci-dessus, tu peux poser une contrainte d'unicité (un index de type UNIQUE) sur la colonne tel_numero.

  3. #3
    Membre averti
    Homme Profil pro
    Inscrit en
    Mai 2004
    Messages
    803
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 803
    Points : 356
    Points
    356
    Par défaut
    Merci pour ta réponse. Je n'y avais pas du tout pensé...

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 26/09/2013, 14h56
  2. [MySQL] Récupérer les valeurs définies dans un champ ENUM
    Par Huntress dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 03/07/2010, 19h55
  3. [PHP-JS] Valeur unique dans un champ
    Par Dark Jukka dans le forum Langage
    Réponses: 2
    Dernier message: 02/04/2007, 19h01
  4. Réponses: 1
    Dernier message: 25/03/2007, 23h03
  5. Réponses: 3
    Dernier message: 18/02/2005, 20h19

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