现在我有这个陈述
DELETE FROM sqlite_sequence where name = 'table_name';
在大多数情况下工作正常,但现在我有一个案例,sqlite_sequence
表没有被创建,所以我回来了
no such table: sqlite_sequence
如果表存在,我需要一个只删除的语句。我发现这个陈述告诉我表是否存在
SELECT name FROM sqlite_master WHERE type='table';
但到目前为止,我一直无法将其与删除声明成功配对
答案 0 :(得分:6)
表存在检查应该包括名称,当然
SELECT count(*) FROM sqlite_master WHERE type='table' AND name='table_name';
但是你必须在单独的语句中从调用应用程序执行它,即运行上面的操作,并根据计数(自然1 = true,0 = false)作为布尔值,你可以继续运行< strong> DELETE 声明。