亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

重復鍵更新 sql 查詢的正確格式是什么?看起來像是錯別字或遺漏了什么

重復鍵更新 sql 查詢的正確格式是什么?看起來像是錯別字或遺漏了什么

PHP
慕神8447489 2022-12-23 13:55:05
我需要進行重復鍵更新查詢,看起來我的查詢中缺少一些東西。此查詢適用于#in values$insertqry=qa_db_query_sub("INSERT INTO test_table (userid,title, price) VALUES (#,#,#)", $userid, $title, $price);我需要添加 ON DUPLICATE KEY UPDATE。此查詢適用于重復更新,但我需要在值中添加 # 以使其 SQL 注入安全。$insertqry = qa_db_query_sub("INSERT INTO test_table (userid,title,price) VALUES ('$userid','$title','$price') ON DUPLICATE KEY UPDATE  title='$title', price='$price'");我正在用 # in values 嘗試這個,但似乎沒有用。$insertqry = qa_db_query_sub("INSERT INTO test_table (userid,title,price) VALUES (#,#,#)",$userid, $title, $price); ON DUPLICATE KEY UPDATE  title=#, price=#", $title, $price);這是有關更新數據庫查詢以匹配格式的參考。 https://github.com/q2a/question2answer/blob/dev/qa-include/db/post-update.php#L126
查看完整描述

1 回答

?
藍山帝景

TA貢獻1843條經驗 獲得超7個贊

在你的情況下,我猜 userid 是主鍵或唯一鍵......試試吧

$insertqry=qa_db_query_sub("REPLACE INTO test_table (userid,title, price) VALUES (#,#,#)", $userid, $title, $price);

如果唯一鍵或主鍵已經存在,替換將自動刪除第一條記錄并插入新記錄

編輯:如果你仍然想使用 ON DUPLICATE KEY try..

$insertqry=qa_db_query_sub("INSERT INTO test_table (userid,title, price) VALUES (#,#,#) ON DUPLICATE KEY UPDATE userid= VALUES(userid), title= VALUES(title), price=VALUES(price)", $userid, $title, $price)


查看完整回答
反對 回復 2022-12-23
  • 1 回答
  • 0 關注
  • 68 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號