如何将csv头文件映射到rails中的sql字段名称?

时间:2013-11-18 08:06:46

标签: mysql ruby-on-rails

我有一个带标题name, dept, class的csv文件。我的sql数据库字段中的表包含名为id, name, class, dept, block的列。

如何将这些csv内容存储并映射到sql数据库?

2 个答案:

答案 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 ExampleImport to ActiveRecord Example