2013-05-11 104 views
0

我刚刚添加了一个新的领域,我的Rails应用程序使用MySQL数据库。我有一个CSV,其中包含表中已有记录的新字段(名称)的值。从CSV质量更新MySQL数据库

Article (table) 
_______________ 
id | name 

在CSV的第一个字段是id字段,第二个字段是名称。我想通过根据CSV中的id字段更新名称字段来更新文章表格。有人可以帮我写一个MySQL查询来做这件事吗?

回答

1
CSV.open('file_path.csv', 'r').each do |row| 
    article = Article.find_by_id(row[0]) 

    article.update_attribute(:name, row[1]) if article 
end 

我用find_by_id,因为它如果没有找到返回nil,而find返回异常的ActiveRecord :: recordNotFound。