PHP ODBC 在重复键上


PHP odbc ON DUPLICATE KEY

我需要另一双眼睛才能看到我哪里出错了。运行下面的代码会给我这个错误。

Warning: odbc_exec(): SQL error: [Microsoft][ODBC Microsoft Access Driver] Missing semicolon (;) at end of SQL statement., SQL state 37000 in SQLExecDirect in C:'xampp'htdocs'ClinicalSolution'UpdateStatusControl.php on line 82
Testing of queue status failed. Error in SQL.

这是我的代码。如果没有"在重复键上",我的插入语句运行流畅,所以我真的不确定我哪里出错了。

$TestQueueStatus = "INSERT INTO QueueLine (NRIC,QueueTime,ActiveStatus,PriorityStatus)
        VALUES ('".$_SESSION['NRICnumber']."','".$QueueTime."','1','".$PriorityStatus."') ON DUPLICATE KEY UPDATE  PriorityStatus='".$PriorityStatus."'";
$TestQueueLine=odbc_exec($dbc,$TestQueueStatus);
    if (!$TestQueueLine) {
          exit("Testing of queue status  failed. Error in SQL.");
    }
odbc_close($dbc);

您是否尝试在 SQL 查询的末尾添加分号?

$TestQueueStatus = "INSERT INTO QueueLine (NRIC,QueueTime,ActiveStatus,PriorityStatus)
                    VALUES ('".$_SESSION['NRICnumber']."','".$QueueTime."','1','".$PriorityStatus."') ON DUPLICATE KEY UPDATE  PriorityStatus='".$PriorityStatus."';";