使用Skype SQLite数据库和SQL Browser的数据库浏览器(v3.7.0)
这会返回13条记录:
select * from messages where chatname not like '%pdx.%';
返回0:
select count(*) from messages where chatname not like '%pdx.%';
这不会删除任何内容:
delete from messages where chatname not like '%pdx.%';
有谁知道为什么SQLite会这样做?鉴于前两个查询在同一个表上具有相同的条件,记录的计数(*)应该等于第一个查询中选择的行数吗?为什么DELETE在使用与返回记录的第一个查询相同的条件时不会影响任何行?
我尝试了几种不同的SQLite前端工具,而且似乎都做了同样的事情。