CAST truncates without warning

Started by mike galmost 22 years ago2 messagesgeneral
Jump to latest
#1mike g
mike@thegodshalls.com

Hello,

If a column, data type text, with 22 characters of data, is then CAST(column_name as varchar(20)) shouldn't a warning or error be generated?

If the source is a variable defined as text instead of directly from a table, using plpsql, would that matter?

Mike

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: mike g (#1)
Re: CAST truncates without warning

Mike G <mike@thegodshalls.com> writes:

If a column, data type text, with 22 characters of data, is then CAST(column_name as varchar(20)) shouldn't a warning or error be generated?

No. This is per SQL spec.

You will get a warning if you assign the value to a varchar(20) table
column *without* any explicit cast. This is also per SQL spec.

regards, tom lane