[Pgsql-ayuda] EXEC SQL SELECT nextval
Mayte
MAYEVFP@terra.es
Tue, 11 Nov 2003 10:04:22 +0000
Hola a todos:
Estoy intentando insertar datos a trav=E9s de SQL inmerso en C. Tengo una=
=20
funci=F3n de conexi=F3n a la bd, otra de desconexi=F3n y otra de inserci=F3=
n de datos=20
en una sola tabla pasados como par=E1metros.=20
El problema es que en la funci=F3n de "A=F1adir datos" al decir que la Pr=
imary_key=20
(que es del tipo integer) vaya tomando el valor siguiente al que exista e=
n=20
cada inserci=F3n con :
EXEC SELECT SQL nextval ('tabla_id') INTO:clave FROM tabla;
e intento insertar los valores con:
EXEC SQL INSERT INTO tabla (tabla_id, tabla_nombre, tabla_fecha) VALUES=20
(:clave, :nombre, now());
pues no me da error, parece que lo hace todo bien, pero cuando me voy a l=
a=20
base de datos, resulta que no ha insertado nada.
Si a=F1ado despu=E9s de insertar:
EXEC SQL COMMIT;=20
me inserta bien los datos la primera vez, pero la segunda, la clave prima=
ria=20
toma el valor 110854220 y ya no a=F1ade m=E1s datos.
Nota: el primer elemento de la tabla tiene el valor tabla_id=3D1 (lo inse=
rt=E9=20
manualmente);
=BFPod=E9is ayudarme? Gracias.