GaussDB数据类型

180 阅读4分钟

数据类型

序号Oracle数据类型GaussDB数据库是否支持差异
1NUMBER [ ( p [ , s ] ) ]支持,有差异精度和用法存在差异。- NUMBER带参数时,GaussDB的精度p与标度s的最大边界值比Oracle更大。
  • NUMBER不带参数时,GaussDB的精度p的默认值远大于带参数时的最大边界值;而在Oracle中,精度p的默认值等于带参数时的最大边界值。
  • GaussDB不支持标度s为负值;在Oracle中,标度s为负值时会精确到相应的整数位。 | | 2 | FLOAT [ ( p ) ] | 支持 | - | | 3 | BINARY_FLOAT | 不支持 | - | | 4 | BINARY_DOUBLE | 支持 | - |
序号Oracle数据类型GaussDB数据库是否支持差异
1DATE支持,有差异精度有差异,GaussDB支持的公元时间相较于Oracle范围更大。
2TIMESTAMP [ ( fractional_seconds_precision ) ]支持-
3TIMESTAMP [ ( fractional_seconds_precision ) ] WITH TIME ZONE支持,有差异GaussDB的timestamptz等价于Oracle的timestampwithloacltimezone,缺少Oracle对应的timestamptz类型。时区更新:部分国家或地区可能会经常更新时区信息, 数据库系统也因此常常需要同步修改时区文件以确保时间内容的正确性。GaussDB时区类型目前只涉及timestamp with timezone,当新的时区文件生效时,不会对已有的数据进行变更,新数据会随时区文件信息进行同步调整。与Oracle的同类型数据能力存在差异。
4TIMESTAMP [ ( fractional_seconds_precision ) ] WITH LOCAL TIME ZONE不支持-
5INTERVAL YEAR [ ( year_precision ) ] TO MONTH支持-
6INTERVAL DAY [ ( day_precision ) ] TO SECOND [ ( fractional_seconds_precision ) ]支持-
序号Oracle数据类型GaussDB数据库是否支持差异
1VARCHAR2 ( size [ BYTECHAR ] )支持,有差异在GaussDB中,size单位为字节,即仅支持BYTE,不支持在BYTE和CHAR之间选择,最大容量为10MB;而在Oracle中,size的单位可以在BYTE和CHAR之间选择,MAX_STRING_SIZE=EXTENDED时,最大长度为32767字节,MAX_STRING_SIZE=STANDARD时,最大长度为4000字节,实际能容纳的字符数与使用的字符集有关。
2NVARCHAR2 ( size )支持,有差异在GaussDB中,NVARCHAR2(n)类型是VARCHAR2(n)类型的别名;而在Oracle中NVARCHAR2(n)与VARCHAR2(n)有一定的区别,MAX_STRING_SIZE=EXTENDED时,最大长度为32767字节,MAX_STRING_SIZE=STANDARD时,最大长度为4000字节,实际能容纳的字符数与使用的字符集有关。
3CHAR [ ( size [ BYTECHAR ] ) ]支持,有差异在GaussDB中,size单位为字节,即仅支持BYTE,不支持在BYTE和CHAR之间选择,最大容量为10MB;而在Oracle中,size的单位可以在BYTE和CHAR之间选择,最大容量为2000个字节,实际能容纳的字符数与使用的字符集有关。
4NCHAR [ ( size ) ]支持,有差异在GaussDB中,size单位为字节,最大容量为10MB;而在Oracle中,size单位为字符,最大容量为2000个字节,实际能容纳的字符数与使用的字符集有关。
5CLOB支持,有差异不支持定位器。
6NCLOB不支持-
7LONG不支持-
序号Oracle数据类型GaussDB数据库是否支持差异
1RAW ( size )支持,有差异在GaussDB中,size是指字节长度建议值,不会用于校验输入raw类型的字节长度。
2LONG RAW不支持-
3BLOB支持-
4BFILE不支持-
序号Oracle数据类型GaussDB数据库是否支持
1ROWID不支持
2UROWID不支持
序号Oracle数据类型GaussDB数据库是否支持
1对象类型不支持
2REF数据类型不支持
3可变数组支持
4嵌套表支持
序号Oracle数据类型GaussDB数据库是否支持
1anytype不支持
2anydata不支持
3anydataset不支持
序号Oracle数据类型GaussDB数据库是否支持差异
1XMLTYPE支持,有差异GaussDB中不支持部分操作,如不能通过使用XMLELEMENT函数将字符串转变为XMLTYPE类型,而是转变成XML类型。具体请参见《开发指南》中“SQL参考 > 数据类型 > XMLTYPE类型”章节。
2URIType不支持-
序号Oracle数据类型GaussDB数据库是否支持
1SDO_GEOMETRY不支持
2SDO_TOPO_GEOMETRY不支持
3SDO_GEORASTER不支持
级别Oracle锁模式GaussDB锁模式备注
--NULLGaussDB的NULL表示未被赋予锁,与Oracle的0级锁对应。
0noneINVALIDGaussDB的INVALID表示被赋予了非法锁。仅在运行过程中出现了GaussDB无法识别的锁时会被赋予INVALID锁。
1nullAccessShare-
2RSRowShare-
3RXRowExclusive-
4SShareUpdateExclusive-
5SRXShare-
6\ShareRowExclusive-
7XExclusive-
8\AccessExclusive-

父主题:  SQL的基本元素