Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
5285 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  Hibernate : Auto Increment sur une propriété

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Hibernate : Auto Increment sur une propriété

n°1751185
ReggiO
Posté le 25-06-2008 à 15:58:13  profilanswer
 

Bonjour,
 
Sous java5, Hibernate3, et MySQL:
Savez vous comment mapper une classe ayant un id (technique) généré en UUID et un champ auto incrémenté (utilisé pour construire un champ logique)?
J'arrive à avoir les deux indépendamment, mais pas dans la même table / classe.
Équivalent SQL de ce que je recherche :
 

Code :
  1. CREATE TABLE `mytable` (
  2.   `id` varchar(10) NOT NULL ,
  3.   `cpt` int(10) NOT NULL auto_increment,
  4.   PRIMARY KEY  (`id`),
  5.   KEY `SECONDARY` (`cpt`)
  6. );


Merci d'avance !

mood
Publicité
Posté le 25-06-2008 à 15:58:13  profilanswer
 

n°1751778
brisssou
8-/
Posté le 26-06-2008 à 13:45:36  profilanswer
 

c'est vraiment utile d'avoir deux clefs uniques sur une même table ?


Message édité par brisssou le 26-06-2008 à 13:45:42

---------------
HFR - Mes sujets pour Chrome - Firefox - vérifie les nouveaux posts des topics suivis/favoris
n°1751780
ReggiO
Posté le 26-06-2008 à 13:47:41  profilanswer
 

Oui, une clé technique qui est l'identifiant unique en base et un compteur qui permet de générer une référence logique, unique.

n°1751795
masklinn
í dag viðrar vel til loftárása
Posté le 26-06-2008 à 14:11:14  profilanswer
 

Ben non, le compteur sert à rien si t'as déjà un identifiant unique [:petrus75]


---------------
I mean, true, a cancer will probably destroy its host organism. But what about the cells whose mutations allow them to think outside the box by throwing away the limits imposed by overbearing genetic regulations? Isn't that a good thing?
n°1751801
ReggiO
Posté le 26-06-2008 à 14:20:29  profilanswer
 

Le compteur me sert à générer une clé unique communiquée au client et ayant un sens logique.
Je suis d'accord que techniquement le compteur ne sert à rien puisque j'ai déjà un identifiant unique. Mais j'en ai besoin pour générer une référence logique (visible par le client, sous la forme: ref = "maclass_titre_" + nbEnregistrements) qui doit contenir le nombre d'enregistrement par utilisateur.

n°1751810
brisssou
8-/
Posté le 26-06-2008 à 14:31:45  profilanswer
 

et si tu mets <property ... column="cpt" insert="false" update="false"/> sur ton compteur ?

 

et dans ton cas, si t'as une clef logique qui est déjà unique, où est l'intérêt d'avoir une clef technique ?


Message édité par brisssou le 26-06-2008 à 14:32:50

---------------
HFR - Mes sujets pour Chrome - Firefox - vérifie les nouveaux posts des topics suivis/favoris
n°1751813
ReggiO
Posté le 26-06-2008 à 14:33:36  profilanswer
 

Ok mais comment spécifier dans le fichier de mapping que cette propriété doit être auto incrémentée ?

n°1751815
ReggiO
Posté le 26-06-2008 à 14:37:45  profilanswer
 

Sinon pourquoi une clé technique et une clé logique:  
Pour des raisons de sécurité, il n'est pas forcement bon de passer dans l'id de l'objet qui sert à communiquer entre serveur et client (en l'occurrence via des web service) un compteur incrémental.

n°1752376
brisssou
8-/
Posté le 27-06-2008 à 16:27:20  profilanswer
 

ReggiO a écrit :

Ok mais comment spécifier dans le fichier de mapping que cette propriété doit être auto incrémentée ?


 
 
tu t'en fous, puisque tu dis à HHH de pas y toucher


---------------
HFR - Mes sujets pour Chrome - Firefox - vérifie les nouveaux posts des topics suivis/favoris

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  Hibernate : Auto Increment sur une propriété

 

Sujets relatifs
[hibernate][RESOLU]insertion, update OK, lecture avec requete HQL KO[Hibernate] choisir ordre des colonnes à la création de tables
[MySQL] Alimentation auto d'une base de donnéesUpdate sur un champs AUTO-INCREMENT
[Zend Eclipse] : pas d'auto complétion[PHP/MYSQL] Formulaire auto-updaté
Erreur: Propriété non gérée par cette objetErreur d'analyse de la valeur pour la propriété 'width'
vba excel : utiliser la proprièté name d'une cellule 
Plus de sujets relatifs à : Hibernate : Auto Increment sur une propriété


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)