Re: Valor de la lleve primaria se almacene en las tablas relacionales

From: Henry <hensa22(at)yahoo(dot)es>
To: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Valor de la lleve primaria se almacene en las tablas relacionales
Date: 2007-01-22 13:51:29
Message-ID: 665546.666.qm@web30811.mail.mud.yahoo.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

CREATE TABLE a (
id serial primary key,
desc texte
);
CREATE TABLE b (
id_a int4 REFERENCES a DEFAULT currval('a_id_seq'),
cant int4
);

insert into a(desc) values('descripcion');insert into a(desc) values('descripcion2');
insert into b(cant) values (10);

tengo duda sobre esta solucion, como la tabla b hace referencia al valor actual de la secuencia a_id_seq, entonces si estamos trabajando con un solo usuario esta solucion seria excelente, pero que sucederia si estamos trabajando con varios usuarios que tienen que hacer inserciones en esas tablas, que pasa si justo al mismo momento o casi al instante ( sin todavia haber insertado detalles) dos o mas usuarios insertan en la misma tabla a, entonces la secuencia que estaba en 1 ahora va a estar en 2 o 3, y bueno
al final las 2 primeras cabezeras se van a quedar sin detalle, y la ultima tomara los detalles de las 2 primeras, por tener el valor por defecto el valor actual de la secuencia.

Digo esto , porke tuve un problema parecido, asi que para insertar en las tablas tuve que hacerlo todo en una sola transaccion y bloqueandolas para ke otro no pueda insertar hasta que termine.

y si lo hacia por el cliente, tendria que saber el valor del primakey, lo cual trae el mismo problema , ya que tendria que consultar a la BD y podria devolver una valor erroneo (otro primary key).


---------------------------------

LLama Gratis a cualquier PC del Mundo.
Llamadas a fijos y móviles desde 1 céntimo por minuto.
http://es.voice.yahoo.com

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Alvaro Herrera 2007-01-22 14:02:04 Re: Conexión de los clientes con la base de datos postgresql
Previous Message Nebur Álvarez Bermúdez 2007-01-22 13:42:35 Re: Conexión de los clientes con la base de datos postgresql