Bonjour à tous,
Petite question pure SQL
J'ai du code avec des cursor partout..! Et ceci peuvent être remplacés par des case when et d'autre choses plus performantes.
Cependant je me pose la question sur l'incrémentation d'un champs,
je sais qu'il existe un auto incrément, mais dans mon cas ça n'irait pas.
Car l'id n'est pas un NUMBER mais un varchar (Me demandais pas pk! ) ex : FIC0000000000000020135
Et qu'il est définie de cette manière :
Comment je peux créer cette incrémentation sans le curseur?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 select max(P_ID) INTO V_P_NUM from P where P_ID like 'FIC%'; Cursor.. V_P_NUM := V_P_NUM + 1; V_P_ID := substr('FIC000000000000000000000000000', 1, 30 - length(to_char(V_P_NUM))) || to_char(V_P_NUM); End cursor
Merci d'avance!
Partager