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. 转:python list排序的两种方法及实例讲解

    对List进行排序,Python提供了两个方法 方法1.用List的内建函数list.sort进行排序 list.sort(func=None, key=None, reverse=False) Py ...

  2. 如何在SqlServer中获取前端连接的IP地址,计算机名等信息

    在一些需求中,可能我们需要知道连接到SqlServer的前端程序的一些系统信息,比如前端连接的计算机名称,IP地址,什么时候开始请求连接,什么时候结束连接等信息. 如果你对SqlServer的系统函数 ...

  3. js对象(一)

    1.创建对象 /*直接创建*/ var person = new Object(); person.name = "宝宝"; person.age = 3; var person2 ...

  4. 记一次项目中的css样式复用

    本文同步至微信公众号:http://mp.weixin.qq.com/s?__biz=MzAxMzgwNDU3Mg==&mid=401616238&idx=1&sn=3c6e9 ...

  5. seaJS循环依赖的解决原理

    seajs模块的六个状态. var STATUS = {  'FETCHING': 1, // The module file is fetching now. 模块正在下载中  'FETCHED': ...

  6. GridView控件RowDataBound事件中获取列字段途径

    今天不知道怎么回事怎么也找不到gridview列中的控件,关键是其为编辑时隐藏域中的控件,取值就很成问题了,网上搜了很到,找到这个比较经典的东东了,可能大家都知道,但很少对比整理到一起,有多种方法可以 ...

  7. 13 Balls Problem

    今天讨论的是称球问题. No.3 13 balls problem You are given 13 balls. The odd ball may be either heavier or ligh ...

  8. tomcat开机启动

    最近老板租了个阿里云的服务器,动不动就自动重启,搞得我还得有事没事盯着服务器,谁知道它什么时候会重启啊,为了让自己不要那么累,也为了不要造成不必要的麻烦,还是把tomcat改成开机启动的程序吧. 网上 ...

  9. Python之路-Day2

    二进制 1bit = 一个二进制位 8bit = 1byte 循环 for while 数据类型 数字.字符串.列表.元祖.字典.集合 字符编码 文件处理 for循环: for i in range( ...

  10. 写css时要注意数字的浮动方向

    写css时要注意数字的浮动方向  当数字位数增加时他的方向才是正确的 text-align:right;padding-right:29px;