pymysql 僅在不存在時插入
P粉956441054
P粉956441054 2024-02-26 15:39:51
0
1
285

這是我第一次使用sql,並且僅當條目不在資料庫中時才嘗試插入資料。我的 sql 如下圖:

insert_query = ("IF NOT EXISTS ( SELECT 1 FROM `follows` WHERE `id_user` = '"+user_id+"' AND `id_folgt` = '"+folgt_id+"') BEGIN INSERT INTO `follows`(`id_user`, `id_folgt`) VALUES ('"+user_id+"','"+folgt_id+"')END;")

不幸的是,我遇到了文法錯誤

P粉956441054
P粉956441054

全部回覆(1)
P粉811349112

如果您只想在表中不存在該行時插入行,那麼您有很多選擇:

  1. 透過表達式建立唯一索引,用於偵測是否存在。如果該表達式的值已存在於表中,伺服器將禁止插入。

  2. 使用 INSERT .. ON DUPLICATE KEY UPDATE 和假 UPDATE 運算(例如,id ​​= id,其中 id 是主鍵)。

  3. 根據 WHERE NOT EXISTS 使用 INSERT .. SELECT。只有當 WHERE 子句傳回 TRUE 時才會執行插入。

還有更多選擇...

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!