我在sqlite
中有一个(键,值)数据库表。我想用一个值update
设置一个现有键,以防它已经存在。如果键不存在,则将键和值insert
插入表中。
什么是sql statement
最好的选择?
我正在使用以下语句创建表:
CREATE TABLE KeyValueTable ( EntityName TEXT PRIMARY KEY NOT NULL, EntityValue BLOB)
答案 0 :(得分:0)
https://www.sqlite.org/lang_UPSERT.html提供有关如何在sqlite
中进行向上插入的信息。请注意,此功能为added to SQLite with version 3.24.0 (2018-06-04)
答案 1 :(得分:0)
INSERT OR REPLACE INTO KeyValueTable VALUES ($key, $value)
虽然INSERT OR REPLACE
通常不等同于UPSERT,但它应该适合您的情况,并且与SQLite的旧版本兼容。