在 SQLite 中实现“ON DUPLICATE KEY UPDATE”
MySQL 的“ON DUPLICATE KEY UPDATE”功能允许使用单个查询根据唯一键约束的存在来插入或更新行。在 SQLite 中,此功能并非原生可用。
实现“UPSERT”操作的替代方法
在 SQLite 中实现相同效果主要有两种方法:
首选方法
首选方法取决于具体的用例。对于在键列上强制执行唯一约束的情况,可以使用以下查询:
<code class="language-sql">INSERT OR IGNORE INTO visits VALUES ($ip, 0); UPDATE visits SET hits = hits + 1 WHERE ip LIKE $ip;</code>
此组合确保操作作为单个原子操作执行,从而保持数据完整性。
另一种解决方案
另一个值得考虑的有效解决方案可在以下网址找到:https://www.php.cn/link/21648c94be6e9adf691ebc249fa6689c
以上是如何在SQLite中模拟MySQL的ON DUPLICATE KEY UPDATE?的详细内容。更多信息请关注PHP中文网其他相关文章!