[英]Select query slow to update
這可能是一個簡單的錯誤,但我很困惑...
我有一個數據庫,其中包含在chrome擴展程序上使用AJAX插入的條目,該數據庫很好用,並且可以立即插入。
我有一個單獨的PHP文件,該文件用於輸出表中的條目數。 此方法有效,但調用時將條目花費很長時間才能更新為正確的號碼。 我需要立即更新。
當表本身立即更新時,查詢輸出正確的數字花這么長時間有什么原因嗎?
<?php
$link = mysqli_connect("localhost", "root", "", "fyp");
/* check connection */
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
if ($result = mysqli_query($link, "SELECT * FROM links")) {
$row_cnt = mysqli_num_rows($result);
printf($row_cnt);
mysqli_free_result($result);
}
/* close connection */
mysqli_close($link);
?>
謝謝。
我認為您應該簡單運行:
if ($result = mysqli_query($link, "SELECT count(*) AS `nr` FROM links")) {
$row_cnt = mysqli_fetch_assoc($result);
printf($row_cnt['nr']);
mysqli_free_result($result);
}
這將是最好的。 或者,如果根本不刪除鏈接,則可以運行:
if ($result = mysqli_query($link, "SELECT id FROM links ORDER BY id DESC LIMIT 1")) {
$row_cnt = mysqli_fetch_assoc($result);
printf($row_cnt['id']);
mysqli_free_result($result);
}
通過使用聚合查詢將處理mysqli_result
給數據庫,並使用mysqli_result
返回標量結果:
if ($result = mysqli_query($link, "SELECT COUNT(1) FROM links")) {
$row_cnt = mysqli_result($result, 0);
printf($row_cnt);
mysqli_free_result($result);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.