gpt4 book ai didi

mysql - 将 mySQL 数据库行导出为文本文件?

转载 作者:行者123 更新时间:2023-11-30 23:02:26 24 4
gpt4 key购买 nike

如何将结果集的每一行导出到 MySql 中它自己的文本文件?

只是想知道是否可以将每一行(从特定列)导出到多个文本文件,以便每一行都输出到一个单独的 .txt 文件?

干杯

最佳答案

是的,这是可能的。但是您需要编写一些代码来执行此操作。执行查询,获取每一行,并为每一行打开一个文件句柄,将任何内容写入文件句柄,然后关闭文件句柄。

如果您想在 MySQL 中执行此操作,您可以使用 SELECT 语句的 MySQL 扩展:

SELECT ... INTO OUTFILE

-或-

SELECT ... INTO DUMPFILE 

但是您需要为每个要生成的“文本文件”执行单独的语句,并且您希望将查询限制为返回单行。

作为执行此操作的一种非常效率低下的示例,对于表中的行数,循环:

SELECT * FROM mytable ORDER BY id LIMIT 0,1 INTO OUTFILE 'row_1.txt' ;
SELECT * FROM mytable ORDER BY id LIMIT 1,1 INTO OUTFILE 'row_2.txt' ;
SELECT * FROM mytable ORDER BY id LIMIT 2,1 INTO OUTFILE 'row_3.txt' ;

这对于大集合来说是非常低效的。而且,有人可能会在此运行时插入或删除行,并且您有可能“丢失”一行和/或获得“重复”。

对于大型集合,您需要更高效的查询。使用 id 值列表,您可以遍历这些值并执行如下操作:

SELECT * FROM mytable WHERE id = 5 LIMIT 1 INTO OUTFILE 'id_5.txt' ;
SELECT * FROM mytable WHERE id = 7 LIMIT 1 INTO OUTFILE 'id_7.txt' ;
SELECT * FROM mytable WHERE id = 11 LIMIT 1 INTO OUTFILE 'id_11.txt' ;

使用单独的程序,您可以只运行一个查询:

SELECT * FROM mytable ORDER BY id;

然后获取行,并将每一行写入一个单独的文件。

关于mysql - 将 mySQL 数据库行导出为文本文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23376402/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com