第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

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

替換為導致“WHERE”處出現(xiàn) MySQL 語法錯誤

替換為導致“WHERE”處出現(xiàn) MySQL 語法錯誤

PHP
喵喵時光機 2023-07-08 17:43:12
我正在嘗試使用 Replace Into 在 php 中創(chuàng)建一個用戶計數(shù)腳本,但目前它似乎拋出一個我無法破譯的 MySQL 錯誤。$db->query("REPLACE INTO onlinenow (`time`,`ip`) VALUES ('$timestamp','$ip') WHERE ip = '$ip' ");對我來說看起來是正確的,但是會導致錯誤MySQL 錯誤:您的 SQL 語法有錯誤;檢查與您的 MySQL 服務器版本相對應的手冊,了解在第 1 行 'WHERE ip = 'REDACTED'' 附近使用的正確語法有人知道我哪里出錯了嗎?
查看完整描述

1 回答

?
慕慕森

TA貢獻1856條經(jīng)驗 獲得超17個贊

簡短回答:

REPLACE INTO沒有WHERE條款。

長答案:

它沒有一個,因為它不需要一個 - 同一份文檔說:

如果表中的舊行與 PRIMARY KEY 或 UNIQUE 索引的新行具有相同的值,則在插入新行之前刪除舊行

這會自動發(fā)生。在你的情況下,我假設它將是 IP 列,應該對其進行PRIMARY KEYUNIQUE約束。

因此,您可以簡單地從查詢中刪除 WHERE 子句,其余的就可以了。


PS 我強烈建議您使用參數(shù)化查詢和準備好的語句安全地在 PHP 中構(gòu)建查詢,而不是像現(xiàn)在一樣使用簡單的字符串連接。這將保護您免受 SQL 注入攻擊,并大大降低其他意外語法錯誤的風險(例如,由于輸入值中的引號和類似問題)。


查看完整回答
反對 回復 2023-07-08
  • 1 回答
  • 0 關(guān)注
  • 117 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號