[BD] 2 updates ou une procédure ?

Statut
N'est pas ouverte pour d'autres réponses.

Ahava

Revenant
Bonjour,


J'ai une liste avec des positions dans la liste, partant de 1 à N (n étant le nombre de tuples) et ces positions sont totalement indépendantes de l'ID du tuple.


Je dois inverser des tuples, donc switcher les positions, mais j'aimerai le faire de la meilleure manière possible, alors voilà :


Qu'est ce qui est mieux, 2 Updates (un update pour le tuple, et un update pour tous les autres qui doivent etre modifiés vu le changement) ou une procédure stockée qui se charge des deux updates elle-même ?


Merci de votre temps...
 

zoheir

cvm.mangaleet()
tuple ?

Pas vraiment compris désolé, mais j'ai l'impression que tu auras besoin d'un trigger... ou pas :p
 
1er
OP
Ahava

Ahava

Revenant
Un tuple, une ligne dans la table...


Oui un trigger serait super ici.... Mais je crois que j'ai eu un bleme lors d'un Trigger after delete, MySQL voulait pas faire le trigger (qui bosse sur la meme table) parce que la table était vérouillée ou je sais pas quoi.


Peut-etre qu'apres un update la table n'est pas verouillée donc je vais pouvoir faire un trigger :eek:
 

zoheir

cvm.mangaleet()
un commit oublié ?
 
1er
OP
Ahava

Ahava

Revenant
Non, fin je fais pas de transactions qd j'ai qu'une requete à faire... plutot deux quoi...

C'est dû au fait que ma DB est MySQL... c'est hyper timide, coté triggers & procédures & fonctions...
 

AcidBird

Elite
Par expérience, je dirais qu'il faut toujours préférer des requêtes à des procédures stockées, sauf si tu as des problèmes de performance vraiment critique, question de portabilité. Une fois que tu utilises les "fonctions avancée" de ton SGDB, tu te lies à lui et complique tout changement de SGDB futur ...
 

Bingo

Beer Addict
AcidBird a dit:
Par expérience, je dirais qu'il faut toujours préférer des requêtes à des procédures stockées, sauf si tu as des problèmes de performance vraiment critique, question de portabilité. Une fois que tu utilises les "fonctions avancée" de ton SGDB, tu te lies à lui et complique tout changement de SGDB futur ...
Je suis assez d'accord, mais en l'occurence ce ne serait pas très difficile de réécrire la procédure quel que soit le SGBD.

Et une précure ChangePositions(pos1, pos2), c'est tellement plus beau à appeler dans l'application que 2 updates ! :)
 
Statut
N'est pas ouverte pour d'autres réponses.
Haut