On Fri, Apr 18, 2014 at 4:42 PM, Simon Slavin <[email protected]> wrote:
> On 18 Apr 2014, at 3:21pm, Dominique Devienne <[email protected]> wrote:
>> No need to resort to triggers. A simple check constraint will do
>
> A constraint can prevent you from putting too-long values in the field. A
> trigger can truncate the value to the correct length, which is what declaring
> a column as VARCHAR() would do.
I'm not sure where you get that declaring a column as varchar()
implicitly truncate, but at least Oracle's VARCHAR2 behaves just like
the check constraint I demonstrated in SQLite earlier. --DD
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> create table t (name varchar2(2));
Table created.
SQL> insert into t values ('a');
1 row created.
SQL> insert into t values ('aa');
1 row created.
SQL> insert into t values ('aaa');
insert into t values ('aaa')
*
ERROR at line 1:
ORA-12899: value too large for column "xxx"."T"."NAME" (actual: 3, maximum: 2)
SQL>
_______________________________________________
sqlite-users mailing list
[email protected]
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users