搜索后,我发现很多超出范围的问题,人们不知道十进制(m,n)中的第一个数字 m 是数字的总数。然而,这不是我的问题。
对于有问题的专栏,我有以下内容:
Field | Type | Null | Key | Default | Extra
preco | decimal(50,2) unsigned | NO | | 0.00 |
设置小数(50,2)比我真正想要或需要的要多得多。我真的只想要10位数。它是一个价格,所以任何超过 1 亿的东西都可能是荒谬的,所以 decimal(10,2) 可能更合适。但是,MySQL 不接受以下查询:
INSERT INTO `produto` (`tipo_id`, `preco`, `qtd`, `opcao1`) VALUES (110, '77888555.43', '10', 'Azul')
我通过 CodeIgniter、phpMyAdmin 和直接在 MySQL 命令行客户端中尝试了查询。我也试过没有十进制值的引号,但我总是得到同样的错误:
“第 2 行的 'preco' 列的值超出范围”