如何使用ruby和续集gem创建具有特定sqlite表字段的.csv文件?

时间:2015-10-13 21:02:26

标签: ruby sqlite csv sequel

底部代码应该创建一个新的测试表,从两个现有表中添加数据并将内容添加到新的csv文件中。解析两个现有表都可以正常工作,并且.csv也可以无错误地创建。我遇到的问题是.csv正在使用空白数据创建,除了3" Fixnum"上面的标题列。我尝试过多种不同的东西,包括字符串插值的多种变体。

require 'sequel'

# Run time argv
DB = Sequel.connect("sqlite://#{db_file}")

# Load to_csv method via extension
DB.extension(:sequel_3_dataset_methods)

# Create test case
DB.create_table(:"#{table}"){
Fixnum :"News-1"
Fixnum :"News-2"
Fixnum :"Item-1"
}

# Parse news table
DB['SELECT one, two FROM news WHERE Id=12;'].each do |news|
#p news
end

# Parse item table
DB['SELECT news_feed FROM item;'].each do |item|
#p item
end

# Insert data into csv_file
1.times{|i|
DB[:"#{table}"].insert("#{news}", "#{news}", "#{item}")
}

# Open .csv file, write and save
File.open("#{csv_file}", 'w'){|f|
f << DB[:"#{table}"].to_csv                        
}

0 个答案:

没有答案