MYSQ笔记:数据类型

本文介绍了在金融场景中如何选择合适的数据类型(如数值的float/double/decimal,整型,字符串的char/varchar/BLOB),以及MySQL中日期时间类型(时间戳和TIMESTAMP)和枚举/集合类型的使用。强调了正确选择对性能和数据安全的重要性。
摘要由CSDN通过智能技术生成

数据类型

数值类型

如果数值类型选的不妥当,有可能会导致IO访问次数变多性能下降
在这里插入图片描述
一般金融数据类型会使用浮点数
float和double如果出现了一处也不会报错。因此一般金融计算使用decimal(28位,底层使用字符串类型进行存储)类型比较多,如果发生数据溢出,decimal会报错也会四舍五入截断。
整形占用内存的大小是固定的,和具体的类型是强相关的,例如下面,括号里面的数字仅仅代表的是整数显示的宽度

age INT(9)

字符串类型

在这里插入图片描述
char是固定长度的,varchar是可变长的
BLOB:存二进制文件
mysql server尽量做最核心的CRUD,其它的逻辑功能一般通过服务端和业务层做限制

日期时间

在这里插入图片描述
时间戳:

mysql> select now();
+---------------------+
| now()               |
+---------------------+
| 2024-02-07 21:19:12 |
+---------------------+
1 row in set (0.00 sec)
mysql> select unix_timestamp(now());
+-----------------------+
| unix_timestamp(now()) |
+-----------------------+
|            1707312003 |
+-----------------------+
1 row in set (0.00 sec)

TIMESTAMP类型会自动更新时间

enum和set

这两个类型都是限制该字段只能取固定的值,但是枚举字段只能取集合中的一个值,而集合字段可以取集合中的任意个值。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值