内置数据类型
瀚高数据库管理系统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等类型操作需要结合管理工具使用。