繁体   English   中英

如何使用最后插入的id从mysql获取记录?

[英]How to fetch record from mysql using last inserted id?

这是我尝试过的,效果很好..

$sql = "SELECT * FROM patient where id = (SELECT max(id) FROM patient)";   
result = mysql_query($sql);
if (mysql_num_rows($result) > 0)
{
    // output data of each row
    while($row = mysql_fetch_assoc($result)) 
    {
        $patientid=$row["id"];
        $patientname=$row["name"];
        $patientrefer=$row["referto"];
        $patientdisease=$row["disease"];
    }
} 
else 
{
    echo "0 results";
}

但每当我用

$sql = "SELECT * FROM patient where id = LAST_INSERT_ID()";

它总是返回0结果。

为了从您的表中获取最后一条(最新)记录,您可以将ORDER BYLIMIT一起进行降序:

SELECT * FROM patient ORDER BY id DESC LIMIT 0,1

在这种情况下,您根本不需要LAST_INSERT_ID 此外,对于并发插入,您无法通过使用LAST_INSERT_ID来确保用户的最后一次插入确实是最新的插入。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM