2015-10-22 63 views
0

我想插入CONTENT_VALUES如果survey_Id不存在於表中。如果該值已存在,我想更新CONTENT_VALUESSURVEY_ID插入檢查duplidate鍵後的值

$sql="insert into `$prefix.survey_question` (SURVEY_ID, CONTENT_VALUES, USER_ID, CREATED_ON)values('$sur_id','$content_val','$email','$now') on duplicate key update CONTENT_VALUES=values('$content_val')"; 
    $query1=mysql_query($sql) 
+0

什麼是'$ query1 = mysql_query(「CONTENT_VALUES」)'? – Typoheads

回答

2

您需要正確刪除設定值的語音標記,並糾正CONTENT_VALUES更新,並觸發查詢:

$query1= "insert into `$prefix.survey_question` 
    (SURVEY_ID, CONTENT_VALUES, USER_ID, CREATED_ON) 
values 
    ('$sur_id','$content_val','$email','$now') 
on duplicate key 
update CONTENT_VALUES=('$content_val'), 
     USER_ID = '$email', 
     CREATED_ON = '$now'"; 
    $resultset=mysql_query($query1); 

還應考慮使用PDO超過mysql擴展。

+0

再次插入線索 – user3386779

+0

您需要將'SURVEY_ID'設置爲主鍵才能觸發重複鍵更新,否則不會有重複的鍵存在,並且會再次插入。 –

+0

'alter table $ prefix.survey_question添加主鍵(SURVEY_ID)' –

0

您可以使用插入忽略查詢,如果插入的記錄重複,則查詢結果將爲零,然後繼續更新。