我希望脚本保存结果到.csv或.txt文件中。我的脚本必须执行select into mssql数据库,并通过电子邮件发送此请求中的所有字符串。 我的代码:将数组写入csv文件
require 'tiny_tds'
require 'csv'
@db_host = 'myserver.com'
@db_user = 'mylogin'
@db_pass = 'mypassword'
client = TinyTds::Client.new(:host => @db_host, :username => @db_user, :password => @db_pass)
results = client.execute(" SELECT * FROM mydatabase ")
results.each do |row|
p $rows = row.to_a
p h = $rows
CSV.open("data.csv", "wb") {|csv| h.to_a.each {|elem| csv << elem} }
end
我的问题:
生成CSV文件只包含了我的请求的第一行。我怎样才能向文件写入我请求中的所有字符串?
你需要把results.each循环到CSV.open阻止 – Fallenhero