1、blob、clob、nclob  三种大型对象(LOB),用来保存较大的图形文件或带格式的文本文件,如Miceosoft Word文档,以及音频、视频等非文本文件,最大长度是4GB。
    LOB有几种类型,取决于你使用的字节的类型,Oracle 8i实实在在地将这些数据存储在数据库内部保存。 
    可以执行读取、存储、写入等特殊操作。  
  bfile  在数据库外部保存的大型二进制对象文件,最大长度是4GB。
    这种外部的LOB类型,通过数据库记录变化情况,但是数据的具体保存是在数据库外部进行的。
    Oracle 8i可以读取、查询BFILE,但是不能写入。
    大小由操作系统决定。  2、没听说过有nchar和nvchar2!
   char(n) n=1 to 2000字节 定长字符串,n字节长,如果不指定长度,缺省为1个字节长 
   varchar2(n) n=1 to 4000字节 可变长的字符串,具体定义时指明最大长度n3、long 可变长字符列,最大长度限制是2GB,用于不需要作字符串搜索的长串数据,如果要进行字符搜索就要用varchar2类型。
long是一种较老的数据类型,将来会逐渐被BLOB、CLOB、NCLOB等大的对象数据类型所取代。  4、raw(n) n=1 to 2000 可变长二进制数据,在具体定义字段的时候必须指明最大长度n,Oracle 8i用这种格式来保存较小的图形文件或带格式的文本文件,如Miceosoft Word文档。
     raw是一种较老的数据类型,将来会逐渐被BLOB、CLOB、NCLOB等大的对象数据类型所取代。  
  long raw 可变长二进制数据,最大长度是2GB。Oracle 8i用这种格式来保存较大的图形文件或带格式的文本文件,如Miceosoft Word文档,以及音频、视频等非文本文件。
     在同一张表中不能同时有long类型和long raw类型,long raw也是一种较老的数据类型,将来会逐渐被BLOB、CLOB、NCLOB等大的对象数据类型所取代 
  ROWID不是oracle的数据类型是数据行在物理磁盘上的物理地址,Oracle通过ROWID来定位数据的具体位置,这是存取表中数据的最快的方法
   例:select * from test1 where rowid='AAAA/0AABAAAD5UAAA';

解决方案 »

  1.   

    表名这样定义好像有冲突,具体原因我也不清楚,你只要把表名改了就行了。
    CREATE TABLE REFERDATUMS--修改表名
     (
         ID             NUMBER (10)   NOT NULL, 
         PROID          VARCHAR2 (20), 
         SUBPROID       NUMBER (20), 
         SPECID         NUMBER (30), 
         STAFFNO        VARCHAR2 (10), 
         RTIME          DATE,
         STATUS         VARCHAR2(20) DEFAULT '提交' 
     );
      

  2.   

    http://www.oradb.net/newuser/datatype_001.htm
      

  3.   

    多谢兄的不吝赐教,我想知道实实在在的三种lob的应用环境,他们保存格式是二进制还是ascll,unicode。他们的区别是什么,都用在什么情况下。另外我曾经用过blob格式,非常不好用,每次建立记录都要先插入空的blob,然后把他select出来,在写入数据然后update回去~~!我现在要存储一个非常长的字符串》4000,而且经常访问,应该如何处理呢?