| From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> | 
|---|---|
| To: | Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us> | 
| Cc: | Stephan Szabo <sszabo(at)megazone23(dot)bigpanda(dot)com>, Andy Marden <amarden(at)usa(dot)net>, pgsql-general(at)postgresql(dot)org | 
| Subject: | Re: Casting Varchar to Numeric | 
| Date: | 2001-12-29 23:07:57 | 
| Message-ID: | 20242.1009667277@sss.pgh.pa.us | 
| Views: | Whole Thread | Raw Message | Download mbox | Resend email | 
| Thread: | |
| Lists: | pgsql-general | 
Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us> writes:
> I can see problems with automatically casting numeric to text because
> you have to guess the desired format, but going from text to numeric
> seems quite easy to do.  Is there a reason we don't do it?
I do not think it's a good idea to have implicit casts between text and
everything under the sun, because that essentially destroys the type
checking system.  What we need (see previous discussion) is a flag in
pg_proc that says whether a type conversion function may be invoked
implicitly or not.  I've got no problem with offering text(numeric) and
numeric(text) functions that are invoked by explicit function calls or
casts --- I just don't want the system trying to use them to make
sense of a bogus query.
> I can cast to integer and float8 fine:
I don't believe that those should be available as implicit casts either.
They are, at the moment:
regression=# select 33 || 44.0;
 ?column?
----------
 3344
(1 row)
Ugh.
regards, tom lane
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Dave Trombley | 2001-12-30 05:34:46 | OIDs as object handles? | 
| Previous Message | john heasley | 2001-12-29 21:28:15 | libpq: possible to get list of tables, fields, and types? |