我必须把一些物品的价格放在一个 mysql 表中。创建我使用的表格时,DECIMAL(10,2)
因为逗号后不需要超过 2 位数字(例如:123,45 将被接受为输入,但 123,456 将使用 PHP 四舍五入为 123,45)。
第一个问题:使用DECIMAL(10,2)
,我怎么知道逗号前可以存储多少个数字?我知道它不是 10,因为 10 只是 Mysql 在对这些数字进行数学运算时使用的精度:那么数字本身的长度在哪里指定?
第二个问题:我正在使用 PHP 对用户输入进行舍入以适应数据类型(浮点数,逗号后有 2 个数字)。我应该如何使用mysqli->bind_param
来插入这些数据?我应该使用哪些数据类型(来自文档)接受bind_param
(并且可能:为什么)?
Character Description
i corresponding variable has type integer
d corresponding variable has type double
s corresponding variable has type string
b corresponding variable is a blob and will be sent in packets