从excel读数据到数据库表中

本文介绍了一个使用Ruby脚本从Excel文件中导入表结构到数据库的方法。该脚本首先打开指定的Excel文件并读取第一个工作表的内容,然后删除现有表中的所有记录,并逐行将Excel数据插入到数据库表中。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

######################表结构LibTableInfo#################################
-------------------------------
column        type        name
-------------------------------
column_1    S            字段一
column_2    S            字段二
column_3    S            字段三
###################数据结构lib_table_info.xls####################################
32    323        32
32    323        32
32    323        32
##################import_excel_table.rb#####################################
# -*- coding: utf-8 -*-
require 'rubygems'
require 'activerecord'
require 'spreadsheet'


class ImportExcelTable
  def self.open_xlsfile(source_name)
    path = File.join(RAILS_ROOT , 'doc/' + source_name)
    book = Spreadsheet.open(path)
    sheet1 = book.worksheet 0
    return sheet1
  end
 
    # lib_table = "LibTableInfo"
    # source_name = "lib_table_info.xls"
   
  def self.run_import(lib_table,source_name)
    sheet1 = open_xlsfile(source_name)   
    eval(lib_table).delete_all
    sheet1.each do |row|
      @lib_table_info = eval(lib_table).new(:column_1 => row[0],:column_2 => row[1],:column_3 => row[2])
      @lib_table_info.save
    end
  end
end

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值