Uuid et mysql

Résolu/Fermé
Serge - 3 août 2016 à 17:55
 Utilisateur anonyme - 5 août 2016 à 15:20
Bonjour,
je ne trouve pas comment utiliser une uuid au lieu d'un auto-incrément dans mysql.
Est ce possible? et si oui comment?
Merci par avance pour votre réponse.
Cordialement
Serge





3 réponses

Utilisateur anonyme
3 août 2016 à 18:17
Bonjour

Un uuid et un auto-incrément n'ont pas le même rôle. Donc je ne vois pas ce que veut dire "au lieu de" : il faut préciser quelles propriétés de l'auto-incrément tu voudrais retrouver en utilisant un uuid.
Tu n'auras pas de génération automatique du champ uuid, tu devras utiliser la fonction mysql UUID() pour le générer alors que pour un auto-increment, il suffit de ne pas mettre de valeur pour en générer une nouvelle.

Le champ devra être un VARCHAR de taille convenable, et tu peux éventuellement en faire une clé primaire si besoin.
0
Merci pour ta réponse,
en fait, comme tu l'as compris, c'est pour utiliser uuid comme clé primaire.
Le lien est trés intéressant mais je ne comprend pas comment utiliser le code donné dans la doc:
mysql> INSERT INTO table (a,b,c) VALUES (1,2,3),(4,5,6)
-> ON DUPLICATE KEY UPDATE c=VALUES(a)+VALUES(b);
Les valeurs " a, b, c " représentent-elles les champs et les chiffres " 1, 2, 3" leurs valeurs mais alors à quoi correspond " 4, 5, 6 " et comment comprendre la ligne
-> ON DUPLICATE KEY UPDATE c=VALUES(a)+VALUES(b);
qui additionne des valeurs?
Je suis perdu.
Merci de vôtre aide
0
Utilisateur anonyme
5 août 2016 à 15:20
Bonjour

Je vois que le sujet est marqué résolu, j'espère qu'il l'est vraiment.
L'exemple que tu donnes n'a aucun rapport avec la fonction UUID. Il concerne la fonction VALUES(), normal que tu aies du mal à voir le rapport.
Je t'avais donné le lien pour que tu voies la fonction UUID, même si ce lien parle d'autres fonctions.
Au passage, les chiffres 4,5,6 correspondaient aussi à des valeurs : cet exemple faisait deux insertions en une seule commande. Mais ça n'a aucun rapport avec UUID().
0