我有一个带标题name, dept, class
的csv文件。我的sql数据库字段中的表包含名为id, name, class, dept, block
的列。
如何将这些csv内容存储并映射到sql数据库?
答案 0 :(得分:0)
如果您知道CSV中列的顺序,那么只需删除标题并在mysql提示符上运行以下命令:
load data local infile 'uniq.csv' into table tblUniq fields terminated by ','
enclosed by '"'
lines terminated by '\n'
(uniqName, uniqCity, uniqComments)
这比加载每一行并为每一行创建一个ActiveRecord对象要快得多。
有关更多信息,请查看此处的mysql文档以加载数据:http://dev.mysql.com/doc/refman/5.1/en/load-data.html。
答案 1 :(得分:0)
对我来说,我使用CSV-Mapper,它创建一个哈希数组,并使用第一行(标题)在哈希中创建键名,每行都是值
向下滚动页面并查看示例@ Automagical Attribute Discovery Example
和Import to ActiveRecord Example