求救:mysql结果集每行输出到一个单独的文件怎么处理?

sh/bash/dash/ksh/zsh等Shell脚本
回复
jianzang0730
帖子: 4
注册时间: 2009-01-09 2:42

求救:mysql结果集每行输出到一个单独的文件怎么处理?

#1

帖子 jianzang0730 » 2009-01-09 2:51

我有一个应用:
在mysql中查询出符合条件的数据(如订单),然后查询得到的结果中的每一条记录(如:一个订单)写入单独一个xml文件怎么处理??
如:
mysql查询结果
select * from orders where order_date>'2008-12-20 0:0:0'
order_id customer_name
1111 customer1
2222 customer2
..................

我要已order_id列值做文件名将数据写入xml文件

1111 customer1 写入文件1111
2222 customer2 写入文件2222


请问这个脚本怎写,谢谢
Bisn
帖子: 12
注册时间: 2007-12-23 16:37

Re: 求救:mysql结果集每行输出到一个单独的文件怎么处理?

#2

帖子 Bisn » 2009-03-28 23:27

没人回?
我写了个perl版的,记得要装DBI和DBD

代码: 全选

#!/usr/bin/perl -w

use DBI;
my $dconnection = DBI->connect( 'dbi:mysql:test', 'root', '' );

$sql = qq{select * from test};
$sth=$dconnection->prepare($sql);
$sth->execute() || die "fatal error: ".$sth->errstr;
while (@data = $sth->fetchrow_array()) {
	$data = $data[0];
	$data1 = $data[1];
	open (F,">$data.txt") or die "Can't open the File : $!";
	print F "$data\t$data1\n";
	close F;
}
头像
xiooli
帖子: 6956
注册时间: 2007-11-19 21:51
来自: 成都
联系:

Re: 求救:mysql结果集每行输出到一个单独的文件怎么处理?

#3

帖子 xiooli » 2009-03-28 23:42

代码: 全选

while read line;do echo "$line">"${line// */}";done
?
回复