之前一直使用oracle,对于oracle的merge语句十分的钟爱。现在做移动开发当然不能使用oracle了,我选择了sqlite,麻雀虽小五脏俱全,sqlite为我们提供了replace into语句,虽然不是特别强大到相当于merge的能力,但已满足insert or update的需求。
CREATE TABLE IF NOT EXISTS T_SYS_PRO (p_sys_pro_id integer primary key,sys_pro_key text unique,sys_pro_val text);--注意:这里必须有unique
REPLACE INTO T_SYS_PRO (sys_pro_key,sys_pro_val) VALUES (?,?);--如果存在相同key的语句,执行此语句后id会自增长,实际上执行的应该是delete 然后insert。
原文链接:https://www.f2er.com/sqlite/200208.html