将资金值存储在 MySQL 中的最佳数据类型是什么?


我们可以将资金值存储在 MySQL 中的 decimal(value1,value2) 中。此处,value1 是包括 value2 在内的总范围。value2 指定小数点后的数字位数。了解此概念,步骤如下。

首先使用 create 命令创建一个表。

mysql> CREATE table MoneyDemo
-> (
-> Id int,
-> Money decimal(10,2)
-> );
Query OK, 0 rows affected (0.46 sec)

可以看出,从上述命令中,decimal 值只有 10 位数字,而且小数点后只有 2 位数字。

创建表后,借助 insert 命令插入了一些记录。如下所示 −

mysql> INSERT into MoneyDemo values(1,98777445.50);
Query OK, 1 row affected (0.13 sec)

mysql> INSERT into MoneyDemo values(2,12345678.00);
Query OK, 1 row affected (0.18 sec)

mysql> INSERT into MoneyDemo values(3,88888888.50);
Query OK, 1 row affected (0.20 sec)

如果在上述命令中插入超过 10 位数字,则会生成一条错误消息。如下所示 −

mysql> INSERT into MoneyDemo values(3,8888888888.50);
ERROR 1264 (22003): Out of range value for column 'Money' at row 1

表中的所有记录都可以通过 select 语句显示。查询如下 −

mysql> SELECT * from MoneyDemo;

得到的输出如下

+------+-------------+
| Id   | Money       |
+------+-------------+
| 1    | 98777445.50 |
| 2    | 12345678.00 |
| 3    | 88888888.50 |
+------+-------------+
3 rows in set (0.00 sec)

更新时间:2020 年 6 月 24 日

5K+ 浏览数

开启您的职业生涯

通过完成课程获取认证

开始
广告