From: | "Joe Conway" <jconway2(at)home(dot)com> |
---|---|
To: | "Peter Eisentraut" <peter_e(at)gmx(dot)net>, <pgsql-sql(at)postgresql(dot)org> |
Subject: | Re: Truncation of char, varchar, bit, varbit types (fwd) |
Date: | 2001-05-20 01:26:07 |
Message-ID: | 020d01c0e0cb$d8c0a2a0$0205a8c0@jecw2k1 |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-sql |
> Implementation proposal as information for the user community. Speak now
> or...
<snip>
FWIW . . .
> insert into test values ('not ok');
> ERROR: value too long for type character varying(4)
/*
* MSSQL 7
*/
create table test (a varchar(4));
The command(s) completed successfully.
insert into test values ('not ok');
Server: Msg 8152, Level 16, State 9, Line 1
String or binary data would be truncated.
The statement has been terminated.
/*
* Oracle 8.1.6
*/
SQL> create table test (a varchar(4));
Table created.
SQL> insert into test values ('not ok');
insert into test values ('not ok')
*
ERROR at line 1:
ORA-01401: inserted value too large for column
> insert into test values ('good ');
> [truncates spaces that are too long]
/*
* MSSQL 7
*/
insert into test values ('good ');
(1 row(s) affected)
select datalength(a) from test;
-----------
4
(1 row(s) affected)
/*
* Oracle 8.1.6
*/
SQL> insert into test values ('good ');
insert into test values ('good ')
*
ERROR at line 1:
ORA-01401: inserted value too large for column
>
> I think this behaviour is desirable over the old one because it makes the
> char and varchar types useful in the first place.
I agree with your assessment. There are implications for people porting
Oracle applications however.
Regards,
-- Joe
From | Date | Subject | |
---|---|---|---|
Next Message | Cedar Cox | 2001-05-20 09:49:00 | timestamp bug |
Previous Message | Peter Eisentraut | 2001-05-20 00:36:22 | Truncation of char, varchar, bit, varbit types (fwd) |