2010-11-01 88 views
1

我需要使用ruby创建逗号分隔文件。数据来自MySQL数据库。建立逗号分隔文件

所以一个例子文件看起来像:

 
userid, username, firstname, lastname, tags 
2343,blankman, blank, man, "hello world tags-here" 

回答

0

假设rows是数组的数组:

require 'csv' 

comma_separated = CSV.generate {|csv| rows.each {|row| csv << row}} 
2

你也可以简单地输出从数据库中的数据到CSV直接与这样的文件:

find_by_sql(["SELECT userid, username, firstname, lastname, tags FROM blankman_table INTO OUTFILE ? FIELDS TERMINATED BY \',\' LINES TERMINATED BY \'\\n\'", filename]) 

不是很性感,但我已经找到了MySQL的CSV一代不如Ruby的FasterCSV库快得多。