From: | "Dean Gibson (DB Administrator)" <postgresql(at)ultimeth(dot)com> |
---|---|
To: | pgsql-general(at)postgresql(dot)org |
Subject: | Re: SELECT CAST(123 AS char) -> 1 |
Date: | 2008-02-12 18:51:17 |
Message-ID: | 47B1EAA5.8060203@ultimeth.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
On 2008-02-12 07:30, Ken Johanson wrote:
>>
>> Sure, but you're a prime candidate for understanding the value of
>> following the spec if you're trying to write software that works with
>> multiple databases.
>
> The spec has diminished in this (CAST without length) context:
> a) following it produces an output which has no usefulness whatsoever
> (123 != 1)
I *OFTEN* use a cast of CHAR to get just the first character.
> b) all the other databases chose to not follow the spec in the context
> of cast and char with implicit length.
I doubt that:
http://publib.boulder.ibm.com/infocenter/dzichelp/v2r2/index.jsp?topic=/com.ibm.db2.doc.sqlref/castsp.htm
http://msdn2.microsoft.com/en-us/library/aa258242(SQL.80).aspx
Your specific example is covered here:
http://vista.intersystems.com/csp/docbook/DocBook.UI.Page.cls?KEY=RSQL_cast
and here:
http://answers.yahoo.com/question/index?qid=20071017084134AA4mCJC
>
> When the length is unqualified, a cast to char should one of:
>
> 1) failfast
> 2) auto-size to char-count (de facto)
> 3) pad to the max-length
What is wrong with using VARCHAR for your
purpose???????????????????????????? If you want the string auto-sized,
that is what VARCHAR is for.
CHAR is, BY DEFINITION, a DECLARED fixed length.
From | Date | Subject | |
---|---|---|---|
Next Message | Alvaro Herrera | 2008-02-12 19:15:23 | Re: end of life for pg versions... |
Previous Message | Nathan Wilhelmi | 2008-02-12 18:33:05 | Deferred constraints and locks... |