SQL IF EXISTS命令

时间:2011-11-09 00:19:27

标签: php sql sql-update exists

我正在尝试使用以下代码查看我的SQL表中是否存在记录。

 if (EXISTS(SELECT * FROM Logs WHERE id=$id)){
      mysql_query("UPDATE Logs SET loglevel = $loglevel WHERE id = $id;");
      mysql_close($con);
      echo "ID: ". $id . "'s new Logging Level is " . $loglevel . ".<br />";
   }
   else{
        echo "ID: ". $id . "was not in the table " . ".<br />";
    }

但是,我一直收到这个错误。

  

解析错误:语法错误,意外的T_STRING   第10行/homepages/6/d382638756/htdocs/process.php

第10行是包含IF EXISTS的行。有人可以帮助我吗?

谢谢,

阿斯温

2 个答案:

答案 0 :(得分:1)

您正在以非常奇怪的方式混合使用SQL和PHP。我想你的意思是这样的:

$result = mysql_query('SELECT COUNT(*) FROM Logs WHERE id="'.addslashes($id).'"', $con);
$row = mysql_fetch_array($result);
if ($row[0])
{

...

答案 1 :(得分:0)

看起来你正在将PHP语法与MySQL语法混合在一起。

根据给出的示例代码,您可能需要查看ON DUPLICATE KEY UPDATE