2024年最新GaussDB数据类型介绍_gausedb,大数据开发开发五年

img
img

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

一、GaussDB 数据库

GaussDB是华为基于openGauss自研生态推出的云化企业级分布式关系型数据库,它支持多种数据类型,包括数值、字符、日期等。在使用GaussDB时,可能需要进行数据类型转换,以满足不同的需求。本文将以示例的形式罗列并介绍一些常见的数据类型转换方法等。

二、数据类型概念及特点

数据类型是一组值的集合以及定义在这个值集上的一组操作。GaussDB数据库是由表的集合组成的,而各表中的列定义了该表,每一列都属于一种数据类型,GaussDB根据数据类型有相应函数对其内容进行操作,例如GaussDB可对数值型数据进行加、减、乘、除操作等。

数据类型是用来定义数据存储格式和数据范围的规范。每种数据类型都有自己的特点和适用范围,它们在数据库中的作用主要有以下几点:
在这里插入图片描述

  • 存储数据:数据库中的每个字段都必须指定数据类型,这样才能确定它们在数据库中的存储格式。不同的数据类型使用不同的存储方式,例如整型会以二进制形式存储,而字符型则以ASCII码或Unicode编码形式存储。
  • 约束数据范围:数据类型可以限制某个字段存储的数据范围,例如整型只能存储整数值,小数型只能存储浮点数等。这样可以确保数据的准确性和完整性,防止非法值进入数据库。
  • 提高查询效率:数据库在查询数据时会根据字段的数据类型进行优化,例如对整型字段的查询会比对字符型字段的查询更快,因为整型字段的数据存储格式更简单,计算也更快。
  • 降低存储空间:不同的数据类型使用不同的存储方式,一些数据类型可以在存储时减少存储空间的占用。例如使用整型可以减少存储空间的占用,因为整型在存储时只需要占用4个字节,而字符型则需要占用更多的存储空间。
  • 提高数据安全性:数据类型可以帮助数据库对数据进行有效的过滤和验证,限制不合法的数据输入,增强数据的安全性和可靠性。

综上所述,数据类型在数据库中扮演着极为重要的角色,它们不仅仅用于存储数据,还可以提高查询效率、降低存储空间、提高数据安全性等。数据库开发人员在设计数据库时必须充分了解各种数据类型的特点和使用场景,合理选用数据类型,才能保证数据库的高效性和稳定性。

三、常用数据类型

1、常用字符串类型介绍

在进行字段设计时,需要根据数据特征选择相应的数据类型。字符串类型在使用时比较容易混淆,下表罗列了GaussDB中常见的字符串类型。
1)常用字符串类型
在这里插入图片描述

2)示例

--创建表。
CREATE TABLE t_char_type
(
  column1 VARCHAR(5)
)DISTRIBUTE BY HASH (column1);

--插入数据。
INSERT INTO t_char_type VALUES ('ok');

--插入的数据长度超过类型规定的长度报错。
INSERT INTO t_char_type VALUES ('too long');
ERROR:  value too long for type character varying(5)
CONTEXT:  referenced column: column1

--明确类型的长度,超过数据类型长度后会自动截断。
INSERT INTO t_char_type VALUES ('too long'::varchar(5));

--查询数据。
SELECT column1, char_length(column1) FROM t_char_type;
 column1 | char_length 
---------+-------------
 ok      |           2
 too l   |           5
(2 rows)

2、布尔类型

1)说明
“真”值的有效文本值是:
TRUE、‘t’、‘true’、‘y’、‘yes’、'1’以及所有非0整数。
“假”值的有效文本值是:
FALSE、‘f’、‘false’、‘n’、‘no’、‘0’、0。
使用TRUE和FALSE是比较规范的用法(也是SQL兼容的用法)。
在这里插入图片描述

2)示例

--创建表。
CREATE TABLE t_bool_type  
(
    column1 BOOLEAN,
    column2 TEXT
)DISTRIBUTE BY HASH(column2);

--插入数据。
INSERT INTO t_bool_type VALUES (TRUE, 'one');
INSERT INTO t_bool_type VALUES (FALSE, 'two');

--查看数据。
SELECT \* FROM t_bool_type;
 column1 | column2 
---------+---------
 t       | one
 f       | two
(2 rows)

SELECT \* FROM t_bool_type WHERE column1 = 't';
 column1 | column2 
---------+---------
 t       | one
(1 row)

3、数值类型

1) 整数类型
在这里插入图片描述

  • TINYINT、SMALLINT、INTEGER和BIGINT类型存储各种范围的数字,也就是整数。试图存储超出范围以外的数值将会导致错误。
  • 常用的类型是INTEGER,因为它提供了在范围、存储空间、性能之间的最佳平衡。一般只有取值范围确定不超过SMALLINT的情况下,才会使用SMALLINT类型。而只有在INTEGER的范围不够的时候才使用BIGINT,因为前者相对快得多。

2)示例

img
img

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

/forums/4f45ff00ff254613a03fab5e56a57acb)**

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 16
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值