Re: Posible Bug

From: Oswaldo <listas(at)soft-com(dot)es>
To: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Posible Bug
Date: 2013-05-03 14:57:36
Message-ID: 5183D060.5080304@soft-com.es
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

El 03/05/2013 16:40, Martín Marqués escribió:
> El día 3 de mayo de 2013 08:43, Oswaldo <listas(at)soft-com(dot)es> escribió:
>> Hola,
>>
>> Creo que he detectado un bug, pero antes de reportarlo os agradecería
>> comprobaseis si la demostración es correcta y si también sucede en otras
>> versiones de postgres. También desconozco si es un bug ya conocido.
>>
> [.....]
>
>> Para reproducirlo ejecutar esta secuencia:
>>
>> begin;
>>
>> create domain t_dom as varchar default '' not null;
>>
>> create table test1 (id int, dom t_dom);
>> create table test2 (id int, dom t_dom);
>>
>> insert into test2 (id) values (1);
>> update test2 set dom = (select dom from test1 where test1.id = test2.id);
>> select * from test2;
>
> test1 no tiene filas, por lo tanto la consulta del sub-query "select
> dom from test1 where test1.id = test2.id" retornará 0 filas,
> insertando un NULL.
>
> Una de las cosas que debe saber cualquier desarrollador que trabaje
> con SQL es tener MUCHO cuidado con los valores Nulos ya que a veces
> son impredecibles.
>
>> En el resultado final la columna 'dom' tiene un valor NULL cuando según las
>> reglas definidas esto no deberia ser posible y se deberia haber producido
>> una excepción.
>
> No. Con ese UPDATE, el valor debe ser NULL.
>

Exacto el update inserta un null, pero la columna esta definida como
tipo 't_dom' el cual no debe admitir nulos. Si en vez de ese update
haces este: "update test2 set dom=NULL;" si arroja el error de la que la
columma dom no admite nulos lo cual es correcto.

--
Oswaldo

-
Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda(at)postgresql(dot)org)
Para cambiar tu suscripcin:
http://www.postgresql.org/mailpref/pgsql-es-ayuda

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Alvaro Herrera 2013-05-03 15:10:22 Re: Posible Bug
Previous Message Martín Marqués 2013-05-03 14:40:28 Re: Posible Bug