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@xxxxxxxxx -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general