【问题标题】:Corrupted Database Table cannot DROP损坏的数据库表不能 DROP
【发布时间】:2017-10-28 12:13:23
【问题描述】:

使用 SQLite3 和 Ubuntu 14.04-LTS。在为 FTS 搜索创建虚拟表时,我设法输入错误。现在我无法删除表格。这就是我想要的:

CREATE VIRTUAL TABLE tFind USING FTS4(main TEXT, base TEXT, hash TEXT);

但是,我必须按“5”而不是“4”,现在我不能DROP 桌子。当我尝试时出现此错误:

刷新表 main.tFind 的架构时出错:没有这样的模块 FTS5

我搜索并找到了有关终端 (CLI) 的 SQLite3 的信息,但我不知道如何使用其中的命令。

我该如何修复它?我有数百行数据和十几个表,所以我不能只用相同的表创建一个新数据库。

【问题讨论】:

    标签: sqlite fts4


    【解决方案1】:

    问题已解决:找到以下“

    Drop a table originally created with 'unknown tokenizer'?

    在哪里

    然后使用(非常危险的)PRAGMA writable_schema 删除 系统表中关于该表的剩余信息:

    PRAGMA writable_schema = ON;
    DELETE FROM sqlite_master WHERE type = 'table' AND name = 'tFind';
    

    非常感谢 CL。为那个帖子。

    【讨论】:

      猜你喜欢
      • 2014-03-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多