Bonjour,
Une question simple :
J'ai une entite simple avec Code (int),Nom(String) :En faisant abstraction du fait que je peux faire une colonne ID avec auto increment
le code est unique
je déclare une named query dans mon entite comme suit :
dans une JForm j'ai un tableau qui affiche :
Code : Sélectionner tout - Visualiser dans une fenêtre à part @NamedQuery(name="update by code",query="update entite a set a.code = a.code +1 where a.code>=:code")
code Nom
1---->a
2---->b
3---->c
je veux insérer un D avant le C
J'exécute ma named query
J'insère mon élément
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Query q = em.createNamedQuery("update by code"); q.setParameter("code", 3); q.executeUpdate();
le tableau se met à jour comme suit :
Code : Sélectionner tout - Visualiser dans une fenêtre à part em.persist(new entite(3,"d");
code Nom
1---->a
2---->b
3---->c
3---->d
la mise à jour a bien été faite car il n y a pas eu d'exception lors de l'insertion !!! si je ferme l'application et que je le réouvre j'ai
code Nom
1---->a
2---->b
4---->c
3---->d
la méthode ressemble à ça :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 query = em.createNamedQuery("tout les elements de la table"); updateJtableData(query); Query q = em.createNamedQuery("update by code"); q.setParameter("code", 3); q.executeUpdate(); em.persist(new entite(3,"d"); query = em.createNamedQuery("tout les elements de la table"); updateJtableData(query);
Merci pour votre aide.
Cdt.
Mhamed
Partager