内置数据类型

瀚高数据库管理系统V9.0提供如下多种兼容数据类型,内容如下:

数据类型分类 数据类型 说明
日期时间类型 DATE
TIMESTAMP(p)
TIMESTAMP WITH TIME ZONE
TIMESTAMP WITH LOCAL TIME ZONE
时间间隔类型 INTERVAL YEAR(p) TO MONTH
INTERVAL DAY(p) TO SECOND(s)
数值类型 NUMBER 无限制
BINARY_FLOAT 6 位十进制数字精度
BINARY_DOUBLE 15 位十进制数字精度
字符类型 CHAR(n) 支持最大长度32767
VARCHAR2(n) 支持最大长度32767
长类型 CLOB 支持最大1GB
NCLOB 支持最大1GB
LONG 支持最大1GB
BLOB 支持最大1GB
RAW 支持最大2000字节
LONG RAW 支持最大1GB

示例

主要展示创建带有不同数据类型字段的测试表,插入对应类型数据并进行查询。

Date

本示例展示创建带有Date类型字段的表,插入数据后进行查询。

代码示例:

ALTER SESSION set nls_date_format =’YYYY-MM-DD HH24.MI.SS.FF’;

create table date_tb1(dt date);

insert into date_tb1 values(‘2022-08-19 11.11.11’);

select * from date_tb1;

TIMESTAMP

本示例展示创建带有Timestamp类型字段的表,修改nls_timestamp_format参数值,插入数据后进行查询。

代码示例:

alter session set nls_timestamp_format=’DD-MON-YY HH24.MI.SS.FF’;

create table timestp_tb(timestp timestamp);

insert into timestp_tb values(‘19-AUG-22 11.11.11’);

select * from timestp_tb;

TIMESTAMP WITH TIME ZONE

本示例展示创建带有Timestamp with time zone类型字段的表,修改nls_timestamp_tz_format参数值,插入数据后进行查询。

代码示例:

alter session set nls_timestamp_tz_format=’DD-MON-YY HH24.MI.SS.FF TZH:TZM’;

create table timestpwtz_tb(timestpwtz timestamp with time zone);

insert into timestpwtz_tb VALUES(‘19-AUG-22 11.11.11’);

select * from timestpwtz_tb;

TIMESTAMP WITH LOCAL TIME ZONE

本示例展示创建带有Timestamp with local time zone类型字段的表,修改nls_timestamp_format参数值,插入数据后进行查询。

代码示例:

alter session set nls_timestamp_format=’DD-MON-YY HH24.MI.SS.FF’;

create table timestpwltz_tb(timestpwltz_clo timestamp with local time zone);

insert into timestpwltz_tb VALUES(‘19-AUG-22 11.11.11’);

select * from timestpwltz_tb;

INTERVAL YEAR TO MONTH

本示例展示创建带有interval year to month类型字段的表,插入数据后并进行查询。

代码示例:

create table inytom_tb(ytom_clo interval year to month);

insert into inytom_tb values(interval ‘ + 2 -1’ year to month);

select * from inytom_tb;

INTERVAL DAY TO SECOND

本示例展示创建带有interval day to second类型字段的表,插入数据后并进行查询。

代码示例:

create table indtos_tb(dtos_clo interval day to second);

insert into indtos_tb values(interval ‘ 2 07:16:23’ day to second);

select * from indtos_tb;

NUMBER

本示例展示创建带有number类型字段的表,插入数据后并进行查询。

代码示例:

create table num_tb(num_clo NUMBER(*));

insert into num_tb values(1E-130);

select * from num_tb;

BINARY_FLOAT

本示例展示创建带有binary_float类型字段的表,插入数据后并进行查询。

create table binaryf_tb(binaryf_clo binary_float);

insert into binaryf_tb values (‘34.84’);

select * from binaryf_tb;

BINARY_DOUBLE

本示例展示创建带有binary_double类型字段的表,插入数据后并进行查询。

create table binaryd_tb(binaryf_clo binary_double);

insert into binaryd_tb values (‘34.84’);

select * from binaryd_tb;

CHAR

本示例展示创建带有char类型字段的表,修改nls_length_semantics参数值,插入数据后并进行查询。

alter session set nls_length_semantics = char;

create table character_tb(char_c char(6), char_b varchar2(6 byte), char_v varchar(6));

insert into character_tb values(‘中文测试数据’, ‘123456’, ‘成功’);

select * from character_tb ;

VARCHAR2

本示例展示创建带有varchar2类型字段的表,插入数据后并进行查询。

create table varchar2_tb(char_clo varchar2(2000));

insert into varchar2_tb values(‘This is a char test!’);

select * from varchar2_tb;

其他类型

CLOB、NCLOB、LONG、BLOB、RAW、LONG RAW等类型操作需要结合管理工具使用。