Re: String literal doesn't autocast to text type - Mailing list pgsql-general

From Tom Lane
Subject Re: String literal doesn't autocast to text type
Date
Msg-id 28961.1457114904@sss.pgh.pa.us
Whole thread Raw
In response to String literal doesn't autocast to text type  (Alex Ignatov <a.ignatov@postgrespro.ru>)
Responses Re: String literal doesn't autocast to text type  (Alex Ignatov <a.ignatov@postgrespro.ru>)
List pgsql-general
Alex Ignatov <a.ignatov@postgrespro.ru> writes:
> Why string literal like 'Hello world!' doesnt automagicaly cast to text
> type?

Because it's not necessarily a string.  It might be meant to be point,
or json, or any number of other types.

> Sure we can create our cast:
> postgres=# create cast (unknown as text) with inout as implicit;
> CREATE CAST

That's a seriously bad idea; it will have all sorts of corner-case
effects that you aren't expecting.

There has been some talk of forcing unknown to text in the output
columns of a sub-SELECT, which would fix the example you show with
a lot less risk of side-effects elsewhere.  But it's not exactly
trivial because of interactions with INSERT ... SELECT.

            regards, tom lane


pgsql-general by date:

Previous
From: Francisco Olarte
Date:
Subject: Re: multiple UNIQUE indices for FK
Next
From: Alex Ignatov
Date:
Subject: Re: String literal doesn't autocast to text type