美文网首页
mysql 使用 unsigned decimal 的注意事项

mysql 使用 unsigned decimal 的注意事项

作者: qyvlik | 来源:发表于2018-05-07 15:58 被阅读0次

mysql 提供了 decimal(m, n) 这个类型,类比 java 的 BigDecimal,不过需要指定整数位数 m,小数位数 n。

如果是unsigned decimal 类型,既非负数,需要设置 mysql 的 sql_modelSTRICT_TRANS_TABLES

操作

建表语句如下:

CREATE TABLE `asset` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT,
  `money` decimal(12, 8) unsigned NOT NULL DEFAULT '0.0',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB;

由于 money 字段是非负 decimal,所以不能成功设置将小于 0 的值

SET SESSION sql_mode = 'STRICT_TRANS_TABLES';
UPDATE asset SET money = -1;

此时会报

Error : Out of range value for column 'money' at row 1

参考

http://www.cnblogs.com/linguoguo/p/6487097.html

相关文章

  • mysql 使用 unsigned decimal 的注意事项

    mysql 提供了 decimal(m, n) 这个类型,类比 java 的 BigDecimal,不过需要指定整...

  • 数据库

    • MySQL 索引使用的注意事项 MySQL 索引使用的注意事项 索引不会包含有NULL值的列使用短索引...

  • MySQL PT工具使用

    MySQL 的decimal数据类型 DECIMAL 列的声明语法是 DECIMAL(M,D)。参数值的范围如下:...

  • MySQL DECIMAL

    其它插入测试结论: 当数值在其取值范围之内,小数位多了,则四舍五入后直接截断多出的小数位。 若数值在其取值范围之外...

  • MySQL定点数据类型(精确值)-DECIMAL

    1 DECIMAL介绍 在MySQL中,DECIMAL和NUMERIC是定点类型数据,以二进制形式存储,因此存储的...

  • 【C/C++】项目_5_MySQL与PostgreSQL数据库及

    @TOC 1.MySQL:decimal,c/ Navicat Premium可访问mysql数据库链接: 链接:...

  • mysql数据完整性

    数据库中的字段类型 mysql中的数据类型有很多,常用的数据类型如下 数字:int,decimal decimal...

  • PHP 疑难杂症

    PHP 使用unsigned bigint PHP 使用unsigned bigint作为主键时应该使用PHPx6...

  • 2019-07-15

    mysql> create table goods( -> id int unsigned primary k...

  • Swoft MySQL

    注意事项 要使用MySQL前提条件必须安装了MySQL,由于目前采用的是Docker的使用,所以提前需要使用Doc...

网友评论

      本文标题:mysql 使用 unsigned decimal 的注意事项

      本文链接:https://www.haomeiwen.com/subject/ghcvrftx.html