Re: no implicit cast error in 9.2? - Mailing list pgsql-general

From Adrian Klaver
Subject Re: no implicit cast error in 9.2?
Date
Msg-id 51156C27.9080108@gmail.com
Whole thread Raw
In response to no implicit cast error in 9.2?  (AI Rumman <rummandba@gmail.com>)
Responses Re: no implicit cast error in 9.2?  (Kevin Grittner <kgrittn@ymail.com>)
List pgsql-general
On 02/08/2013 12:23 PM, AI Rumman wrote:
> Hi,
>
> I am using
> PostgreSQL 9.2.3 on x86_64-unknown-linux-gnu, compiled by gcc (GCC)
> 4.4.6 20120305 (Red Hat 4.4.6-4), 64-bit.
>
> I got a bit confused after installing this version. So far I used to
> know that from Postgresql 8.3 implicit casting has been removed and the
> following should not work at 8.3 :
> create table testtab ( id varchar, id1 int)
> insert into testtab values (1,1);
>
> Where it was good to work at 8.1
>
> http://osdir.com/ml/pgsql-general/2011-02/msg00055.html
>
> I also faced the problem earlier.
>
> But in 9.2 it is working perfectly.
> Am I missing any release notes?
>
> Please share your opinion. It will be appreciated.

As I remember implicit casting was not entirely removed and the
text <--> int combination was kept.

To extend your example, you can see it works both ways::

test=# create table testtab ( id varchar, id1 int);
CREATE TABLE
test=# insert into testtab values (1,1);
INSERT 0 1
test=# insert into testtab values (1,'1');
INSERT 0 1
test=# SELECT * from testtab ;
  id | id1
----+-----
  1  |   1
  1  |   1
(2 rows)


Unless of course you use a non-integer string:

test=# insert into testtab values (1,'one');
ERROR:  invalid input syntax for integer: "one"
LINE 1: insert into testtab values (1,'one');


>
> Thanks.


--
Adrian Klaver
adrian.klaver@gmail.com

pgsql-general by date:

Previous
From: Jay McGaffigan
Date:
Subject: Restoring a database dump from 9.0 to 9.2
Next
From: Kevin Grittner
Date:
Subject: Re: no implicit cast error in 9.2?