如果列URL在SQLite上对其具有唯一约束并且并发执行,则会抛出约束违规错误吗?意味着两个或多个线程同时运行完全相同的插入。
insert into urls(url)
select 'https://www.test.com'
where not exists(select * from urls where url = 'https://www.test.com');
答案 0 :(得分:0)
是的,即使遇到并发更新,SQLite也会正确地强制执行唯一约束。因此,在完全相同的时间执行这些事务之一可能会失败。