Identifiant unique sur plusieurs tables

kalimbra Messages postés 546 Statut Membre -  
jee pee Messages postés 31875 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,

j'aurais besoin d'un identifiant unique sur plusieurs tables (autrement dit dont la valeur ne se retrouve sur aucune des tables concernées).

Pas difficile me direz vous, sauf que je traite chacune de ces tables séparément. Cahcune a son id primaire et unique, mais cet identifiant doit être unique sur l'ensemble de la base. (j'en ai besoin pour établir des liaisons)..

Existe t' il une fonction pour cela ou dois je vérifier à chaque insertion l'entièreté des tables concernées ?
Configuration: Windows XP
Safari 530.1

4 réponses

  1. jee pee Messages postés 31875 Date d'inscription   Statut Modérateur Dernière intervention   9 977
     
    Salut,

    Cette discussion est ancienne, mais comme elle vient d'être réveillée ;-)

    Sous un SGBD comme oracle on utiliserait une séquence pour générer un identifiant unique.

    Mais cela n'existe pas sous mysql, la solution créer une fonction qui simule le fonctionnement des séquences : http://www.sqlfr.com/codes/MYSQL-FONCTION-GERER-COMPTEURS-EQUIVALENT-SEQUENCES-ORACLE_45299.aspx

    cdlt

    1
  2. Nabla's Messages postés 18201 Date d'inscription   Statut Contributeur Dernière intervention   3 228
     
    merci de préciser sur quelle base de données tu travailles ...
    0
  3. kalimbra Messages postés 546 Statut Membre 72
     
    ooppsss désolé

    il s'agit de MySQL
    0
  4. Jul
     
    md5(microtime()) avec une suite de lettre correspondant à ta base :
    sur une base livre id = LIV464532qs465qs
    sur une base Bibli id = BIBLI4654587dsf9875

    en gros c'est l'idée mais faut le donnée comme valeur et pas comme auto-incrémentation.
    0