如何从 sql 模式文件中提取数据?

How to extract data from a sql schema file?

我有一个导出的 sql 架构文件。 (类似于我们这里的 https://livesql.oracle.com/apex/livesql/file/content_O5AEB2HE08PYEPTGCFLZU9YCV.html

此文件包含所有创建 table 和插入值命令。

我想将所有数据库导出为 CSV 或 JSON 格式。

有没有办法达到同样的效果?

您似乎在询问如何将数据从 .sql 脚本直接转换为原始数据格式。这将需要一个能够读取 .sql 脚本格式的 SQL 解析器。这是在 MySQL 中使用 mysql 客户端和 MySQL 服务器 SQL 解析器的组合实现的。复制这个将需要大量工作。

老实说,最简单的解决方案是使用 mysql 客户端将 .sql 脚本的表和数据导入到 MySQL 实例中。然后您可以将数据转储为 CSV 格式,或您想要的任何其他格式。

您可以 运行 使用 mysql 客户端以批处理模式进行查询,将结果转储为 CSV 格式(实际上 tab-delimited),或者您可以在 [=26] 中编写一个简单的客户端=] 或任何您喜欢的语言。

另一种方法是使用 mysqldump --tab 转储 CSV 文件。我鼓励您阅读相关文档。