Mr. Tom I downloaded you presentation slides of oracle 9i
</code>
http://asktom.oracle.com/~tkyte/9iClass/index.html <code>
in that demo0013.sql gave me the following :
demo@ORA92> @E:\mak\oracle\ask-tom\Presentations\9iTrain\9iTrain\demo013
demo@ORA92>
demo@ORA92> create table t ( a char(1), b char( 1 char ), c char(2000 char) );
Table created.
demo@ORA92>
demo@ORA92> insert into t (a) values ( unistr( '\00d6') );
1 row created.
demo@ORA92>
demo@ORA92> insert into t (b) values ( unistr( '\00d6') );
1 row created.
demo@ORA92>
demo@ORA92> select length(b), lengthb(b), dump(b) dump from t;
LENGTH(B) LENGTHB(B)
---------- ----------
DUMP
--------------------------------------------------------------------------------------------
NULL
1 1
Typ=96 Len=1: 63
demo@ORA92>
demo@ORA92> insert into t (c) values ( rpad( unistr( '\00d6'), 2000, unistr('\00d6') ) );
1 row created.
demo@ORA92>
demo@ORA92> insert into t (c) values ( rpad( unistr( '\00d6'), 1001, unistr('\00d6') ) );
1 row created.
demo@ORA92>
demo@ORA92> insert into t (c) values ( rpad( unistr( '\00d6'), 1000, unistr('\00d6') ) );
1 row created.
demo@ORA92>
demo@ORA92> drop table t;
Table dropped.
But according to your slides when you enter a unicode character which is more than one byte into a char(1) column it should give an error which is'nt the case here.
My DB CharSet is :
AMERICAN_AMERICA.WE8MSWIN1252
Any comments,
Thanks.