1. class HardWorker
  2. include Sidekiq::Worker
  3. require 'CSV'
  4. def perform(file_path)
  5. csv_text = File.read(file_path)
  6. csv = CSV.parse(csv_text, :headers => true)
  7. csv.each do |row|
  8. gis_road_link = GisRoadLink.new
  9. gis_road_link.no = row["NO"]
  10. gis_road_link.fno = row["FNO"]
  11. gis_road_link.tno = row["TNO"]
  12. gis_road_link.from_name = row["FROM_NAME"]
  13. gis_road_link.to_name = row["TO_NAME"]
  14. gis_road_link.name = row["NAME"]
  15. gis_road_link.cds = row["CDS"]
  16. gis_road_link.r_cds = row["R_CDS"]
  17. gis_road_link.len = row["LEN"]
  18. gis_road_link.ldkd = row["LDKD"]
  19. gis_road_link.jdcdkd = row["JDCDKD"]
  20. gis_road_link.fjdcdkd = row["FJDCDKD"]
  21. gis_road_link.rxdkd = row["RXDKD"]
  22. gis_road_link.jffgdkd = row["JFFGDKD"]
  23. gis_road_link.zyfgdkd = row["ZYFGDKD"]
  24. gis_road_link.hxkd = row["HXKD"]
  25. gis_road_link.f_t = row["F_T"]
  26. gis_road_link.t_f = row["T_F"]
  27. gis_road_link.dldj = row["DLDJ"]
  28. gis_road_link.jsfs = row["JSFS"]
  29. gis_road_link.fglx = row["FGLX"]
  30. gis_road_link.gjzyd = row["GJZYD"]
  31. gis_road_link.r_gjzyd = row["R_GJZYD"]
  32. gis_road_link.jtxtj = row["JTXTJ"]
  33. gis_road_link.r_jtxtj = row["R_JTXTJ"]
  34. gis_road_link.sjcs = row["SJCS"]
  35. gis_road_link.r_sjcs = row["R_SJCS"]
  36. gis_road_link.ldtxnl = row["LDTXNL"]
  37. gis_road_link.r_ldtxnl = row["R_LDTXNL"]
  38. gis_road_link.ldywhs = row["LDYWHS"]
  39. gis_road_link.r_ldywhs = row["R_LDYWHS"]
  40. gis_road_link.szxzq = row["SZXZQ"]
  41. gis_road_link.szjtxq = row["SZJTXQ"]
  42. gis_road_link.szjd = row["SZJD"]
  43. gis_road_link.szzt = row["SZZT"]
  44. gis_road_link.szfdtz = row["SZFDTZ"]
  45. gis_road_link.zhgxsj = row["ZHGXSJ"]
  46. gis_road_link.tpxx = row["TPXX"]
  47. gis_road_link.spxx = row["SPXX"]
  48. gis_road_link.version = version
  49. if gis_road_link.save
  50. puts ("No是:"+gis_road_link.no.to_s + '的数据导入成功')
  51. else
  52. puts ("No是:"+gis_road_link.no.to_s + '的数据导入失败')
  53. end
  54. end
  55. end

在rails 4 中 使用 CSV 组件来 把csv文件导入到数据库的更多相关文章

  1. 将csv格式的数据文件导入/导出数据库+添加新的字段

    最近一直忙于实验室的事情,没有好好更新博客,在抓包的过程中,遇到了很多问题. 因为我常用Wireshark将抓包信息导出为csv文件,这里简单mark一下将csv文件导入/导出到数据库的2种方法: 一 ...

  2. CSV文件导入到数据库中读取数据详解(接着上个帖子)

    一.controller层 二.SERVICE层 @Overridepublic Result importJinjiangAssessResult(MultipartFile file) throw ...

  3. Jmeter—6 CSV Data Set Config 通过文件导入数据

    线程组循环次数大于1的时候,请求里每次提交的数据都相同.有的系统限制了不能提交相同数据,我们通过 CSV Data Set Config 加载csv文件数据. 1 创建一个文本文件,输入参数值保存为. ...

  4. Jmeter入门6 参数化—CSV Data Set Config 通过文件导入数据

    线程组循环次数大于1的时候,请求里每次提交的数据都相同.有的系统限制了不能提交相同数据,我们通过 CSV Data Set Config 加载csv文件数据. 1 创建一个文本文件,输入参数值保存为. ...

  5. 大数据量.csv文件导入SQLServer数据库

    前几天拿到了一个400多M的.csv文件,在电脑上打开要好长时间,打开后里面的数据都是乱码.因此,做了一个先转码再导入数据库的程序.100多万条的数据转码+导入在本地电脑上花了4分钟,感觉效率还可以. ...

  6. 将csv文件导入sql数据库

    有一个csv文件需要导入到Sql数据库中,其格式为 “adb”,"dds","sdf" “adb”,"dds","sdf" ...

  7. POSTGRESQL 创建表结构、修改字段、导入导出数据库(支持CSV)

    这两个月经常使用postgresql,总结一些经常使用的语句: --创建表 CREATE TABLE customers ( customerid SERIAL primary key , compa ...

  8. Ruby Rails学习中:User 模型,验证用户数据

    用户建模 一. User 模型 实现用户注册功能的第一步是,创建一个数据结构,用于存取用户的信息. 在 Rails 中,数据模型的默认数据结构叫模型(model,MVC 中的 M).Rails 为解决 ...

  9. Ruby Rails学习中:关于测试的补充,MiniTest报告程序,Guard自动测试

    一. 关于测试的补充 1.MiniTest报告程序 为了让 Rails 应用的测试适时显示红色和绿色,我建议你在测试辅助文件中加入以下内容: (1).打开文件:test/test_helper.rb ...

随机推荐

  1. C# ADO.NET (sql语句连接方式)(查询)

    using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...

  2. http请求的开销

    很多人都说要减少http请求,可关注为什么要减少请求的人却少很多,本文是对我在几篇博客以及知乎上看到的内容的整理. http请求头的数据量 每次请求都会带上一些额外的信息进行传输,当请求的资源很小,比 ...

  3. 项目在build machine中失败,本地Build成功的程序集版本问题

    MSBuild在build machine中遇到which has a higher version than its reference assembly:(in my case let's say ...

  4. MVC使用内建的Form辅助器方法创建Select元素

    第一种方法: List<SelectListItem> statusItems = new List<SelectListItem>();            statusI ...

  5. iOS开发常见BUG和一些小技巧(ps:耐心看完,很实用)

    [385][scrollView不接受点击事件,是因为事件传递失败] // // MyScrollView.m // Created by beyond on 15/6/6. // Copyright ...

  6. FP_PR2SAP 除包材、半成品以外的半成品下层物料展望期7天更改为40日

    --除包材.半成品以外的半成品下层物料展望期7天更改为40日 INSERT INTO OUT_PR (pr_id, ITEM, SUPPLIER_ID, DUE_DATETIME, QTY, PROC ...

  7. Magento1.9批量修改产品 Attribute Set

    今天修改产品时遇到这样一个需求:重新设置产品的 Attribute Set,使用的是Magento1.9系统,Magento提供这样一个插件 Flagbit Change Attribute Set: ...

  8. cocos2dx中常见设计模式

    1.单例设计模式:导演类 2.观察者模式: 被观察者含有一个数组,里边存放了所有观察者的引用,在被观察者的状态发生改变的时候,通过调用观察者的函数来通知观察者,实现了信息的传递.  事件监听器:就是采 ...

  9. JQuery Mobile入门——设置后退按钮文字(转)

    http://www.tuicool.com/articles/AZnYVz JQuery Mobile入门——设置后退按钮文字 时间 2013-01-09 20:24:28  CSDN博客原文  h ...

  10. JSP(include指令)页面

    <%@ page language= "java" contentType="text/html;charset=UTF-8" %><html ...