Postgresql:在 Table 的列中查找一些文本

Postgresql: Look For Some Text in Columns of a Table

我有一个非常奇怪的问题。

我需要在旧的 Postgresql 数据库中找到一个特定的字段, 我知道此列中的一些值,但我不知道 table 和列的名称...

问题是,没有这个数据库的文档,这个数据库有 700 多个 tables,其中一些 tables 有 200 列...

所以我有超过 60.000 列(如果你使用逗号分隔符,它是六万),我们知道是因为 entity framework.

我已经看了很多table,但我一点进展都没有。

我们需要找到这个,因为业务需要显示历史数据。

我的问题是:是否有任何工具可以查看每个 table 的每一列?或者这甚至可能吗?

OBS:我知道这需要很长时间才能完成哈哈,

我会先用 运行 pg_dump 以文本格式导出数据库,然后我会用 less 在文件中搜索字符串。向后搜索 COPY 语句以找出 table.

知道 table 后,您可以计算列数以找出存储值的列。

通过在循环中使用 COPY table TO 'C:\tmp\table.csv' DELIMITER ',' CSV HEADER;,我能够 t运行sform 一个 csv 文件中的每个 table,然后我构建并 运行 一个程序来搜索在每个文件上。

OBS:我确实喜欢因为我的 Postgresql 版本不支持 pg_dump。

有关详细信息,请参阅 Export a PostgreSQL Table to a CSV