尝试在mysql数据库中插入带有PHP的整数1.5,但插入的数字为1.0,2.0如何正确插入(1.5)?
$number = 1.5;
数字mysql数据类型:number numeric(3,2);
$stmt = $this->db->prepare('UPDATE scores SET number = ? WHERE id = 1');
$stmt->bind_param('i', $number);
更新:
问题是$stmt->bind_param('i', $number);
它将mysql记录更新为整数(i)(1)。正确使用$stmt->bind_param('d', $number);
在更新以$ stmt减速的条目之前,它为(d)double(1.5)。
答案 0 :(得分:0)
前1和2是整数1.5是float或double 值,这意味着此字段中的值类型必须与此类型匹配。尝试更改其类型。
其次我认为如果是主键,表中的ID如果type为double / float 则不能自动增加,所以你需要确保数据库表中的每条记录都是正确的。
我想让你也问为什么你想要一个浮动/双重ID,这不是选择表中数字名称的好选择。更好的方法是使唯一标识符名称ID不是最好的,因为它确定了 mysql 中的主要内容。
答案 1 :(得分:0)
请使用number
数据类型FLOAT
和长度15,2
。我希望能解决你的问题。