|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité régulier
![]() Inscription : décembre 2003 Messages : 17 ![]() |
Bonjour
En cherchant sur le net une fonction pour remplacer mysql_insert_id pour PostgreSQL, j'ai trouvé cette article : http://www.sitepoint.com/print/site-mysql-postgresql-2 qui donne à la fin de la page cette fonction : Code :
Ce que je ne comprend pas c'est : last_value et la syntaxe ${tablename}_${fieldname}_seq Si qqn pouvait m'éclaircir. Merci d'avance melmel |
||
|
|
00
|
|
|
#2 |
|
Membre confirmé
![]() Inscription : septembre 2003 Messages : 302 ![]() |
les id comme tu l'entends sous mysql sont en fait des sequences sous postgres qui sont construits de cette façon : nomdelatable_nomduchamp_seq
Ensuite la variable last_value te donne la valeur d'id libre à laquelle tu peux mettre ton nouvel enregistrement. C'est aps très français mais j'espère que tu comprends ce que je veux dire |
|
|
00
|
|
|
#3 | |
|
Invité régulier
![]() Inscription : décembre 2003 Messages : 17 ![]() |
C'est pas très clair...
J'ai lu ca, http://dgriessinger.developpez.com/p...sql/sequences/, mais je ne comprend pas très bien ce que tu veux dire par : Citation:
Par exemple, les id 1, 2, 3 ont été créés. last_value me retourne 4 ? Je suis à l'ouest là ou c'est ca ? ^^ Ce que je veux c'est bien l'id attribué à cet enregistrement, soit sa séquence, pas la suivante. A moins que SELECT soit super fort et qu'il me retourne la valeur juste avant last_value, qui est la bonne, non ? please help |
|
|
|
00
|
|
|
#4 |
|
Membre confirmé
![]() Inscription : septembre 2003 Messages : 302 ![]() |
autant pour moi je me suis trompé : ça te retourne la dernière valeur donc dans ton exemple ça te retourne 3
désolé pour la mauvaise info (j'aurai du vérifier avant) |
|
|
00
|
|
|
#5 |
|
Invité régulier
![]() Inscription : décembre 2003 Messages : 17 ![]() |
Merci pour ton aide, c'est beaucoup plus clair maintenant
melmel |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com