今天写程序发现一个问题,在sqlite3里面,浮点数的位数不同是不能算相等的,如下代码:
UPDATE t_wifi SET endtime = %f WHERE tmac=\'%s\' and endtime=%f
这个时候,假如数据库里面的endtime是 xxx.1255,而需要匹配的endtme时间为 xxx.12550。
这种情况是匹配不到的,所以我们最好把所有的浮点型都格式化,留4位小数点,如下:
UPDATE t_wifi SET endtime = %.4f WHERE tmac=\'%s\' and endtime=%.4f这个时候就会正常了! 原文链接:https://www.f2er.com/sqlite/199491.html