经过数小时的在线搜索后,我找不到问题的答案。
尝试获取最后更新行的 ID。这是我的 php 脚本 -
$con = mysqli_connect("localhost","DB_NAME","PWD");
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
mysqli_select_db($con,"DB") or die ("no database");
$result=mysqli_query($con,"SET @update_ID := 0;
UPDATE TABLE_234 SET PLAYERNAME = PETER, ID = (SELECT @update_ID := ID)
WHERE PLAYERNAME IS NULL
LIMIT 1;
SELECT @update_ID ");
if (!mysqli_query($con,$result))
{
die('Error: ' . mysqli_error($con));
}
echo $ID;
mysqli_close($con);
错误-
警告:mysqli_query() [function.mysqli-query]:空查询…在线…
错误:您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,了解在附近使用的正确语法...
感谢您的帮助。
最佳答案
编辑: 您尝试在最后几行显示 $ID;但是你在 php 代码中哪里设置的呢?
试试这个:
$con = mysqli_connect("localhost","DB_NAME","PWD");
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
mysqli_select_db($con,"DB") or die ("no database");
$sql="SET @update_ID := 0;
UPDATE TABLE_234 SET PLAYERNAME = PETER, ID = (SELECT @update_ID := ID)
WHERE PLAYERNAME IS NULL
LIMIT 1;
SELECT @update_ID as ID";
if (mysqli_multi_query($con,$sql))
{
do
{
// Store first result set
if ($result=mysqli_store_result($con))
{
while ($row=mysqli_fetch_row($result))
{
$ID=$row[0];
}
}
}
while (mysqli_next_result($con));
}
echo "ID=" . $ID;
mysqli_close($con);
关于php - 上次更新的行 php 脚本中的 Mysql-空查询错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20311232/