【发布时间】:2015-11-19 22:02:44
【问题描述】:
我正在尝试使用 php 的 mysqli 扩展在 mysql 数据库中执行一些查询。
我的一个查询与字符串查询配合良好,它获取数据并关闭连接(我不确定如何)。
但是当我尝试调用存储过程而不是使用字符串查询时,它可以工作,但连接仍处于睡眠状态并且不会关闭。
第 1 部分
工作和连接关闭
public function getCities(){
$connection = $this ->db-> connect();
$result = $connection -> query("select * from cities");
return $result;
}
第二部分
正在工作,但连接仍处于睡眠状态
public function getCities(){
$connection = $this ->db-> connect();
$result = $connection -> query("Call procGetCities()");
$isclosed=mysqli_close($connection);
if(!isclosed){
echo "notclosed";
} else {
echo "closed";//returnin closed
}
return $result;
}
我发现了同样的问题,但没有答案。
【问题讨论】:
-
回答后通读您的问题时,我不能 100% 确定您的具体问题是什么。
-
我想知道为什么使用“从城市中选择*”关闭连接但使用存储过程时没有关闭连接。以及如何关闭它。
-
阅读我的回答,你误用了mysqli_close的返回值
-
如果它关闭连接它返回真对吗?在我的情况下它返回 true 但是当我从 mysqlbenchmark 检查我的数据库时,我可以看到睡眠连接。
-
那下次描述你检查过的mysql benchmark :) 会调查一下
标签: php stored-procedures mysqli