name (not null unique) age
a 11
b 12
c 52
d 49
应该如何实现 名称a 若存在,则更新age年龄为20, 若不存在则插入。
类似upsert 在sqlite有什么合适的写法吗
比如:UPDATE (+ INSERT if UPDATE fails)
还有‘-- Try to update any existing row
UPDATE players SET age=32 WHERE user_name='steven';
-- Make sure it exists
INSERT OR IGNORE INTO players (user_name, age) VALUES ('steven', 32);
insert 语句加 or replace 即可
insert or ignore 表示插入数据、但如果已存在的话则忽略
insert or replace 表示插入数据、但如果已存在的话则替换
INSERT OR REPLACE INTO players (name, age) VALUES ('a', 20);
两种方案:
其一:
UPDATE (+ INSERT if UPDATE fails)
其二:
INSERT OR IGNORE INTO visits VALUES ($name, '');
UPDATE age SET aget = 20 WHERE name LIKE $name;