我有一个连接到数据库的代码。它使用 mysql_unbuffered_query 在大表上执行选择语句。它使用 mysql_fetch_row 遍历记录并最终释放结果。有时,运行代码的服务器与网络断开连接,无法访问数据库。如何在使用 mysql_fetch_row 读取记录时检测到这种断开连接?这是示例代码:
$mysql_link = mysql_connect( 'server', 'uname', 'pword' );
if ( mysql_select_db( 'large_database', $mysql_link ) )
{
$query = "SELECT * FROM my_large_table";
$records = mysql_unbuffered_query( $query, $mysql_link );
while ( $record = mysql_fetch_row( $records ) ) // database disconnects here
{
// do something with the record
}
}