From: | "Cesar A(dot)" <carbonarac(at)cantv(dot)net> |
---|---|
To: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: fallo en insert? |
Date: | 2004-05-29 12:49:00 |
Message-ID: | 326990-22004562912490251@cantv.net |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Gracias... con las ayudas de estas listas un va teniendo mayor vision, por
lo que dicen y por lo que uno imagina luego de leer de ustedes...
>Seguro que no hay otro valor?
>Probaste esto desde el psql:
>
>=> select * from persona
Seguro, con cada prueba que hacia por formulario, lo chequeaba desde psql
>Que dicen los logs de Postgresql?
Como buen novato, no se mirar los logs, ni...
>> $insertar_hab="insert into
>> persona(nombre,apellido,doc_id,)
>> values('$nom','$ape','$d_i');";
>> pg_exec($conexion,$insertar_hab);
>
>Vamos por partes.
>
>Yo escribiría el INSERT así:
>
>$insertar_hab="insert into
> persona(nombre,apellido,doc_id,)
> values('" . $nom . "','" . $ape . "','" . $d_i . "');";
¿Escribir de esta forma me da alguna otra ventaja, aparte de lo "prolijo, y
legible."?
>> Repasemos...
>> En la tabla direccion tengo la clave primaria que se genera
automaticamente
>> (dir_id de tipo serial), esa clave la agrego como ajena a la tabla
persona
>> (dir_id de tipo int references direccion(dir_id))
>>
>> Al intentar hacer
esto es que me empiezan a saltar fallos...¿es posible que
>> lo tenga mal declarado? o algo???
Creo que mi problema estaba, en que no estaba leyendo bien el
direccion.dir_id, y no cargaba ni le pasaba nada a persona.dir_id...el
problema lo resolvi, aunque tengo la impresion que fue a lo cavernicola,
luego de insertar la direccion:
...
pg_exec($conexion,$insertar_direc);
$listar_cod_dir="select dir_id from direccion ;";
$sql_cod_dir=pg_exec($conexion,$listar_cod_dir);;
$cuenta_cod_dir=pg_numrows($sql_cod_dir);;
$a=1;
$reg=$cuenta_cod_dir - $a;
$cod_dir=pg_fetch_row($sql_cod_dir,$reg);
$b=$cod_dir[0];
$insertar_hab="insert into
persona
values('$nom','$ape','$d_i',$b);";
pg_exec($conexion,$insertar_hab);
Creo que hubiera podido acer algo mejor con: pg_getlastoid() pero...no la
se usar, habra que hacer pruebas...
From | Date | Subject | |
---|---|---|---|
Next Message | olivia jurado | 2004-05-29 13:56:19 | spool en postgresql |
Previous Message | Martin Marques | 2004-05-29 12:00:38 | Re: fallo en insert? |