php - mysqli数据库连接不正常
问题描述
请参阅 PHP 中的以下代码。
$db = new mysqli($CONF['host'], $CONF['user'], $CONF['pass'], $CONF['name']);
if ($db->connect_errno) {
echo "Failed to connect to MySQL: (" . $db->connect_errno . ") " . $db->connect_error;
}
$db->set_charset("utf8");
$db->autocommit(FALSE);
$db->begin_transaction();
$result= $db->query("update users set is_verified=1 where id=10 and is_verified=0"); //$result is allways true
$affRow = $db->affected_rows; //allways returns -1
//die();
$db->commit();
问题:
$affRow 总是等于-1,即使一行影响数据库。
如果我取消注释
die()
代码,查询会在$db->commit()
尚未执行时影响数据库。$db->affected_rows
在读取值之前为 1。就在阅读之前,它变为 -1 并且 $affRow 也变为 -1!为什么会发生这些?我哪里错了?
解决方案
推荐阅读
- oracle - SQL 计划更改原因
- python - 从 python 中的 post 请求中解析数据
- docker - 为什么容器已经存在?
- mysql - 在每个重复值第一次出现时显示行
- python - 返回元组时出现意外的“NoneType”对象不可迭代错误
- c++ - 如何使用存储在地图中的数据使用 C++ 中的 std::sort() 函数对数组进行排序?
- javascript - 为什么控制台给出错误:无法导入空路径?
- java - java代码中的问题-返回语句-找不到问题
- python - Django - 在模板中打印变量
- javascript - Using the JSON.Parse Reviver to transform an object