达梦常⽤数据类型汇总
1.数值数据类型:
精确数值数据类型包括:NUMERIC、DECIMAL、DEC 类型、NUMBER 类型、INTEGER 类型、INT 类型、BIGINT 类型、TINYINT 类
型、BYTE 类型、SMALLINT 类型。
近似数值类型包括:FLOAT 类型、DOUBLE 类型、REAL 类型、DOUBLE PRECISION 类型。
1.NUMERIC[精度,标度]:⽤于存储零、正负定点数。精度范围1⾄38
2.NUMBER类型:跟NUMERIC相同
3.DECIMAL/DEC类型:跟NUMERIC相似
decimal是整数数据类型
4.INTEGER/INT类型:⽤于存储有符号整数,精度为10
5.BIGINT类型:⽤于存储有符号整数,精度为19,标度为0
6.TINYINT类型:⽤于存储有符号整数,精度为3,标度为0。取值范围为:-128~+127。
7.BYTE类型:与TINYINT相似,精度为3,标度为0。
8.SMALLINT类型:⽤于存储有符号整数,精度为5,标度为0。
9.BINARY类型:指定定长⼆进制数据。
10.REAL类型:带⼆进制的浮点数。
11.FLOAT类型:⼆进制精度的浮点数,精度最⼤不超过53。
12.DOUBLE类型:同FLOAT相似,精度最⼤不超过53。
13.DOUBLE PRECISION类型:该类型指明双精度浮点数,其⼆进制精度为53,⼗进制精度为15。
使⽤语法:NUMERIC[(精度 [, 标度])],DECIMAL、DEC 类型、NUMBER 类型与 NUMERIC 的语法⼀致。
NUMERIC(4,1) 定义了⼩数点前⾯ 3 位和⼩数点后⾯ 1 位,共 4 位的数字,范围在 -999.9 到 999.9。所有 NUMERIC 数据类型,如果其值超过精度,会返回⼀个出错
//创建表,定义⾦额字段为 NUMERIC 类型,精度为 8, 标度为 2
//即⼩数点前⾯ 6 位,⼩数点后⾯ 2 位
CREATE TABLE numer_tab(
cust_id INT NOT NULL,
atm NUMERIC(8,2)
);
//插⼊数据
INSERT INTO numer_tab values('10000001','123456.12');
INSERT INTO numer_tab values('10000002','-123456.21');
INSERT INTO numer_tab values('10000003','1234567.21');  会执⾏失败,⼩数点前超过6位。
查看所有数据。
2.字符数据类型:
1.CHAR/CHARACTER类型:定长字符串,最⼤长度由数据库页⾯⼤⼩决定。
2.VARCHAR类型:可变长字符串,最⼤长度由数据库页⾯⼤⼩决定。
create table char_tab
(
b1 char(10),
b2 varchar(10),
primary key(b1)
)
insert into char_tab values('aaa','bbb');
select * from char_tab;
3.位串数据类型:
BIT 类型语法:BIT
BIT 类型⽤于存储整数数据 1、0 或 NULL,只有 0 才转换为假,其他⾮空、⾮ 0 值都会⾃动转换为真,可以⽤来⽀持 ODBC 和 JDBC 的布尔数据类型。DM 的 BIT 类
//创建表,定义性别字段为 sex, 1-男,0-⼥
CREATE TABLE bit_tab(
cust_id INT NOT NULL,
cust_name VARCHAR(10),
sex bit
);
//插⼊数据
INSERT INTO bit_tab values('1','张三',1);
INSERT INTO bit_tab values('2','李利',0);
SELECT * FROM bit_tab;
4.多媒体数据类型:
1.TEXT/LONGVARCHAR类型:变长字符串类型,其字符串的长度最⼤为2G-1,可⽤于存储长的⽂本串。
2.IMAGE/LONGVARBINARY类型:可⽤于存储多媒体信息中的图像类型。
3.BLOB类型:⽤于指明变长的字符串,长度最⼤为2G-1字节。
4.CLOB类型:⽤于指明变长的字符串,长度最⼤为2G-1字节。
5.BFILE类型:⽤于指明存储在操作系统中的⼆进制⽂件。
//创建表,定义多个多媒体数据类型字段
CREATE TABLE TEXT_tab(
c1 TEXT,
c2 BLOB,
c3 CLOB,
c4 IMAGE
);
//插⼊数据
INSERT INTO TEXT_tab values('dameng','0x123456789','clob','0x987654321'); SELECT * FROM TEXT_tab;
5.⽇期时间数据类型:
1.DATE类型:包括年、⽉、⽇信息,定义了‘-4712-01-01’和‘9999-12-31’之间任何⼀个有效的格⾥⾼
利⽇期。
2.TIME类型:包括时、分、秒信息。
3.TIMESTAMP/DATATIME:包括年、⽉、⽇、时、分、秒信息。
4.TIME WITH TIME ZONE类型:描述⼀个带时区的TIME值。
5.TIMESTAMP WITH TIME ZONE类型
6.TIMESTAMP WITH LOCAL TIME ZONE类型:描述⼀个本地时区的TIMESTAMP值。
7.BOOL/BOOLEAN数据类型:布尔数据类型TRUE和FALSE。
TIME 类型的⼩数秒精度规定了秒字段中⼩数点后⾯的位数,取值范围为 0~6,如果未定义,缺省精度为 0。TIMESTAMP 类型的⼩数秒精度规定了秒字段中⼩数点后⾯的位数,取值范围为 0~6,如果未定义,缺省精度为 6。
//创建表,定义 3 个⽇期时间数据类型,DATE、TIME 及 TIMESTAMP
CREATE TABLE DATE_TAB(
cust_id INT NOT NULL,
pay_date DATE,
pay_time TIME(2),
pay_timestamp TIMESTAMP
);
//插⼊数据
INSERT INTO DATE_TAB
values('111','2021-11-19','23:59:59.99','2021-11-19 23:59:59.999999');
INSERT INTO DATE_TAB
values('112','2021-11-18','10:05:30.00','2021-11-18 10:05:30.000000');
SELECT * FROM DATE_TAB;

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。