我想查询我的数据库并获取结果,然后将它们导出到.txt、.cvs或.xls中
mysql数据库未托管在我的本地计算机上
下面是我访问数据库并在屏幕上返回结果的代码:
#!/usr/bin/ruby
require 'mysql'
require 'watir'
require "win32ole"
excel = WIN32OLE::new('excel.Application')
workbook = excel.Workbooks.Add
worksheet = workbook.Worksheets(1)
mysql = Mysql.init()
mysql.connect(host='hostname', user='username', passwd='pwd', db='DBname')
results = mysql.query("Select * FROM table")
results.each{|row|; puts row;}
mysql.close()
worksheet.SaveAs("C:\\Scripts\\DB_Test\\Test.xlsx")
workbook.Close发布于 2012-02-24 05:30:07
csv很简单。我不确定您从mysql.query得到了什么,但请确保每一行都是一个数组,其中包含您希望放入csv行中的内容,然后执行以下操作:
require 'csv'
CSV.generate do |csv|
csv << ["headers","describing","the data"]
mysql.query("SELECT * FROM table").each { |row| csv << row }
endcsv支持在标准库中,所以不需要任何gem。请注意,标准库在1.8和1.9之间进行了更改-示例应该使用1.9。
发布于 2015-10-29 18:57:13
这块宝石可能对你有很大帮助。你可以用一个漂亮灵活的DSL导出任何复杂的查询。
https://stackoverflow.com/questions/9421160
复制相似问题