我有一个具有列平衡的mysql数据库。此表用于存储有关用户帐户余额的数据,那么如何在mysql语句中添加数字?
这是我到目前为止所拥有的
$sql_data = "UPDATE `database1`.`users` SET (`balance`) = '(what to put here?)'
WHERE ('" . $mysqlid . "') ";
所以我必须a)使用mysql选择查询检索当前余额? 和b)我用什么来将整数5添加到列平衡,mysql行是double(16,2)
答案 0 :(得分:2)
$sql_data = "UPDATE `database1`.`users` SET `balance` = MIN(`balance` + 5, (maximum_value_they_can_have)) WHERE ('" . $mysqlid . "') ";
编辑:
可以说,您可以检查balance + 5
是否使用不太可能遇到问题的内容(例如bcmath函数)来验证PHP中balance
数据类型的范围。 (通过字符串比较,给定精度数学)
答案 1 :(得分:1)
你可以这样做:
$sql_data = "UPDATE `database1`.`users` SET `balance` = (`balance` + [value to be added]) WHERE ('" . $mysqlid . "') ";
答案 2 :(得分:1)
试试这个:
$bal=100.5; // balance to be add
$sql_data = "UPDATE `database1`.`users` SET `balance` = (`balance`+'$bal') WHERE ('" . $mysqlid . "') ";