Bonjour,
Dans ma base de données PostgreSQL, j'ai une table avec la structure suivante:
TABLE_NAME
value text,
label text,
description text
J'ai inséré les 3 lignes suivantes dans la table:
1 2 3
| INSERT INTO table_to_delete (value, label, description) VALUES ('-1', 'a', '');
INSERT INTO table_to_delete (value, label, description) VALUES ('0', 'b', 'desc b');
INSERT INTO table_to_delete (value, label, description) VALUES ('1', 'c', 'desc c'); |
Lorsque je fais un SELECT simple pour tout obtenir il me montre correctement le résultat:
VALUE LABEL DESCRIPTION
-1 a
0 b desc b
1 c desc c
Après avoir fait un update de la ligne avec le label 'b',
UPDATE table_to_delete SET label = 'b b' WHERE label = 'b';
Le résultat du même SELECT est différent (la ligne que j'ai mis à jour apparait à la fin):
VALUE LABEL DESCRIPTION
-1 a
1 c desc c
0 b b desc b
Pourquoi se passe-t-il? je n'ai mis aucun ORDER BY dans ma requête, donc je suppose que le moteur de la BD fasse un ORDER BY quelconque automatiquement.... lequel?
comment faire pour faire en sorte que le résultat de la requête soit toujours le même lorsque je fais des update, mais sans modifier la structure de la table (sans ajouter de colonne)? (c'est une table d'une BD "héritée" que je ne peux pas modifier...)
Merci
Partager