the answer from metalink
====================================================================
ORA-22866 default character set is of varying widthCause: A character LOB was defined but the default character set is not fixed width.Action: Ensure that the character set is of fixed width before defining character LOBs.

解决方案 »

  1.   

    Plus:The restriction on CLOB and varying width character sets exists in Oracle 8.0. Thus, either you are not really on 8.1.6 or you have COMPATIBLE set lower than 8.1.0. CLOBs for varying width character sets are allowed in Oracle8i. They are internally stored as fixed-width UCS-2 Unicode and converted to the database character set as required.
      

  2.   

    把你的字符级修改了,再试
    1、数据库: Oracle 8i R3 (8.1.7) for NT 企业版说明: CLOB字段可以select,但select时不可以使用where
     SQL> create table a(a clob);SQL> insert into a values('1234');SQL> insert into a values('5648');SQL> select *from a; 12345648
      

  3.   

    1、数据库: Oracle 9i  for NT 企业版
    CLOB字段可以select,select时也可以使用whereSQL> create table tbl2(a clob);表已创建。insert into  tbl2 values('134444')SQL> select * from tbl2 where a like '13%';A
    --------------------------------------------
    134444
    134444
    134444
      

  4.   

    试试这个也可以:
    svrmgrl
    SVRMGR>startup mount
    SVRMGR>alter system enable restricted session;
    SVRMGR>alter system set job_queue_processes=0;
    SVRMGR>alter database open;
    SVRMGR>alter database character set ZHS16GBK;
    SVRMGR>shutdown
    SVRMGR>startup