结合数据库看clob, blob

阅读更多

一、clob和blob对应两种数据库的情况

oracle中存在clob, blob两种数据类型

mysql中不存在clob,用longtext来替代clob。mysql中也存在blob和longblob

 

二、当hibernate hbm property的type属性定义java.sql.Clob,java.sql.Blob或定义为hibernate clob,blob类型,hibernate在建表时会将该字段设置的数据类型

1. oracle:hibernate建表时会将该字段数据类型设置为oracle的clob与blob类型

2. mysql:hibernate建表时会将type=clob/java.sql.Clob的字段定义为longtext,会将type=blob/java.sql.Blob的字段定义为longblob类型

 

三、补充

1. oracle 有varchar2类型,此种数据类型长度<=4000 char

2. varchar类型,此种数据类型不是oracle独有,长度<=255

3. 对于mysql,当hibernate hbm property的type=string/java.lang.String时,如果length>255,则hibernate自动建表时会将该字段类型定义为longtext

 

你可能感兴趣的:(clob,blob,oracle,mysql,hibernate)