|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité régulier
![]() Gallien LABEYRIEGéomaticien / Développeur Inscription : juin 2010 Messages : 13 ![]() |
Bonjour,
Je souhaite faire une requête d'insert qui comporte un retour sur les identifiants nouvellement insérés. Voilà la requête : Code :
INSERT INTO TABLE(operateur) VALUES ('tata') ,('toto') RETURNING id; Code :
Merci d'avance cordialement, Gallien LABEYRIE |
||
|
|
00
|
|
|
#2 |
![]() ![]() Inscription : octobre 2008 Messages : 1 702 ![]() |
Etre dans une transaction ou non ne change rien à RETURNING
Exemple:
test=> create table trans(id serial,op text);
NOTICE: CREATE TABLE will create implicit sequence "trans_id_seq" for serial column "trans.id"
CREATE TABLE
test=> begin;
BEGIN
test=> insert into trans(op) values('ab'),('cd') returning id;
id
----
1
2
(2 rows)
INSERT 0 2
test=> commit;
COMMIT
|
|
|
00
|
|
|
#3 | ||
|
Invité régulier
![]() Gallien LABEYRIEGéomaticien / Développeur Inscription : juin 2010 Messages : 13 ![]() |
Merci pour ta réponse, je trouve en effet curieux que la transaction puisse masquer les ids retournés.
Malheureusement je n'y arrive toujours pas! Ni sur PGAdmin, ni sur mon script PHP. Je pense que mon problème vient plutôt du script censé recupérés les identifiants des enregistrements créé mais je ne vois pas du tout d'où cela peut venir car cela reste ultra basique du genre... Code :
|
||
|
|
00
|
|
|
#4 |
![]() ![]() Inscription : octobre 2008 Messages : 1 702 ![]() |
Ca ne dit pas ce que ça fait à l'exécution.
Ca ne rentre pas dans le IF? Ca ne rentre pas dans le while? Ca affiche quelque chose ou rien? Eventuellement essaye print_r($row) pour voir toute la ligne renvoyée |
|
|
00
|
Copyright © 2000-2013 - www.developpez.com