0

我想知道是否有一种方法可以在整个 SQLite 数据库中搜索一个特定的单词。我不知道它所在的列,甚至不知道它所在的表。

包含此特定单词的表和行/列还包含我需要编辑的其他条目。

简而言之:

需要找到一个特定的词

无法查询(我认为我至少不能),因为我不知道它所在的表或列名。

我需要知道这个特定词在哪里被引用。在什么表和行中,这样我就可以访问它旁边的其他人。

基本上,是否有 SQlite 的 CTRL+F 功能可以搜索整个 SQLite 文件?

我有 mac/windows/linux 机器。如果这是一个解决方案,我不受软件的限制。

4

1 回答 1

0

任何此类功能本质上都是运行检查每个表的每一列的查询。您可以通过运行以下 SQL 的脚本来执行此操作:

1)获取所有表的列表:

select name from sqlite_master where type = 'table'

2)对于每个表,获取其所有列(列名在name字段中可用)

pragma table_info(cows)

3)然后对于每个表,生成一个检查每个字段的查询并运行它:

select
  *
from cows
where name like '%Daisy%'
or owner like '%Daisy%'
or farm like '%Daisy%'
于 2012-07-20T01:18:57.490 回答