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)
如上所示,十进制值仅有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)
阅读更多:MySQL 教程
极客教程