pymysql 仅在不存在时插入
P粉956441054
P粉956441054 2024-02-26 15:39:51
[MySQL讨论组]

这是我第一次使用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 时才会执行插入。

还有更多选择...

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号