Skip site navigation (1) Skip section navigation (2)

alter column type (from timestamp to date) violates not null

From: "psmith" <suller(dot)andras(at)gmail(dot)com>
To: pgsql-bugs(at)postgresql(dot)org
Subject: alter column type (from timestamp to date) violates not null
Date: 2007-03-09 12:55:59
Message-ID: 1173444959.644833.20220@c51g2000cwc.googlegroups.com (view raw or flat)
Thread:
Lists: pgsql-bugs
Hi!

When change a column type from timestamp to date, the 'infinity' and '-
infinity' values will be NULL. Even if the column has a not null
constraint.
Sorry, if it is a duplicated bug report.

Regards,
psmith

Here is the test procedure:

proba2=# create table a(t timestamp not null);
CREATE TABLE
proba2=# insert into a values ('infinity');
INSERT 0 1
proba2=# SELECT * from a;
    t
----------
 infinity
(1 sor)

proba2=# alter table a alter t type date;
ALTER TABLE
proba2=# SELECT *, t is null as is_null from a;
 t | is_null
---+---------
   | t
(1 sor)

proba2=# \d a
     Tábla "public.a"
 Oszlop | Típus | Módosító
--------+-------+----------
 t      | date  | not null

proba2=# select version();
                                                   version
--------------------------------------------------------------------------------------------------------------
 PostgreSQL 8.1.0 on i486-pc-linux-gnu, compiled by GCC cc (GCC) 4.0.3
20051023 (prerelease) (Debian 4.0.2-3)
(1 sor)

proba2=# select 'infinity'::timestamp::date is null;
 ?column?
----------
 t
(1 sor)


Responses

pgsql-bugs by date

Next:From: Tom LaneDate: 2007-03-09 15:48:29
Subject: Re: BUG #3126: Kernel audit Problem
Previous:From: Alvaro HerreraDate: 2007-03-09 12:17:00
Subject: Re: BUG #3126: Kernel audit Problem

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group