PHP/SQL内存不足:致命错误:内存不足(已分配1310720)(试图分配4294967296字节)


PHP / SQL out of memory: Fatal error: Out of memory (allocated 1310720) (tried to allocate 4294967296 bytes)

我正在运行下面的查询,其中有两个长文本字段(175&525),我得到了内存不足的错误。这个查询是已经太长了,还是发生了其他事情?

错误:致命错误:内存不足(已分配1310720)(试图分配4294967296字节)

$query = "SELECT username, url, accountcreated, accountstatus, address, city, birthday, education, relation, gender, profile_story, intsettinga, intsettingb FROM users WHERE username=?";
$stmt = $db->stmt_init();
($stmt->prepare($query))|| fail('An error occurred: MySQL prepare', $db->error);
$stmt->bind_param("s",$username)|| fail('An error occurred: MySQL bind_param', $db->error);
$stmt->execute()|| fail('An error occurred: MySQL execute', $db->error);
$stmt->bind_result($screenname, $url, $created, $status, $address, $city, $bday, $education, $relation, $gender, $profile, $settinga, $ssettingb)|| fail('An error occurred: MySQL bind_result', $db->error);
$stmt->fetch() || fail('Profile not found');
$stmt->close();
$db->close();

错误发生在bind_result,添加了$stmt->store_result();解决了这个问题:

$stmt->execute()|| fail('An error occurred: MySQL execute', $db->error);
$stmt->store_result(); 
$stmt->bind_result($screenname, $url, $created, $status, $address, $city, $bday, $education, $relation, $gender, $profile, $settinga, $ssettingb)|| fail('An error occurred: MySQL bind_result', $db->error);
$stmt->fetch() || fail('Profile not found');
$stmt->close();
$db->close();