首页 > 解决方案 > ruby 无法加载此类文件续集

问题描述

我尝试在以下代码下运行,但出现此错误

ruby/3.0.0/rubygems/core_ext/kernel_require.rb:85:in `require': 无法加载这样的文件——续集(LoadError)

这是我试图运行的代码

require 'csv'
require 'devkit'
require "rubygems"
require "sequel"
require 'tiny_tds'
require "date"
require "time"
require 'active_support/time'

db_connection_params = {
  :adapter => 'tinytds',
  :host => 'myhostname', # IP or hostname
  :port => 'myport', # Required when using other that 1433 (default)
  :database => 'mydatabase',
  :user => 'myuser',
  :password => 'myuserpassword', 
  :timeout => 600, 
  :integratedSecurity => true
}

DB = Sequel.connect(db_connection_params)

station_info = DB[:station_info].where(Sequel.like(:STATE, '%_%'))#.where(Sequel[:MAIN_ID] 
400)#.where(STATE NOT LIKE '%[_]%')
station_info_dataset = station_info.all
station_info_dataset.each do |row|
station_info_state      =  row[:'state'].to_s
#puts station_info_state
@station_info_station_id    =  row[:'stid_rf']
@station_info_station_name  =  row[:'station_name']
main_id = row[:'main_id']
#puts row.to_s 
#puts station_info_state
#state = DB["select * from state where kod = 'MLK' "].each do |line|
#state = DB["select * from state where kod = 'JHR' "]
#state = DB[:state].where(kod: row[:'state'])
#state = DB[' select * from ? ', station_info_state]
if station_info_state.include? "_"
else
    state = station_info_state[/[^_]+/]
    #puts state
    query = " select * from #{state} where MAIN_ID = #{main_id} order by date_taken ASC, TIME 
ASC " #order by date_taken ASC, TIME ASC "
    #puts query
    state = DB["#{query}"]
    #state = DB[:state].where(Sequel.like(:kod, '#{station_ids}' ))
    #state_dataset = state.offset(1)
    @last_daily_rainfall = 0
    CSV.open("./rainfall_tideda/#{@station_info_station_id}_rf.csv", "w+") do |csv|
        csv << ["#{@station_info_station_id}", "INCREMENTAL", "#{@station_info_station_name}"]
        state.each do |line|
            #puts line.to_s
            time_taken = line[:'time'].to_i
            #puts time_taken
            time_taken = format('%04d', time_taken).to_s
            #time_taken = time_taken + "00"
            simulated_time_taken = time_taken.to_s.gsub(/.{2}(?=.)/, '\0:')
            #time_taken = Time.parse("#{time_taken}").to_s
            #time_taken.to_time.strftime('%H:%M').to_s
            #time_taken = format('%06d', time_taken)
            #puts simulated_time_taken
            date_taken = line[:'date_taken'].to_s
            #puts date_taken
            date_taken = Date.parse("#{date_taken}").to_s
            #puts date_taken
            #simulated_time_taken = date_taken + " " + simulated_time_taken
            #puts simulated_time_taken
            #simulated_time_taken = Time.parse("#{simulated_time_taken}") + 1.seconds
            #puts simulated_time_taken
            #date_taken.delete! '-'
            date_taken = date_taken.gsub( "-", "/" )
            #puts date_taken 
            #exit
            current_daily_rainfall = line[:'daily_rainfall']
            if(current_daily_rainfall >= 0 && current_daily_rainfall != '-9999')
                this_daily_rainfall = current_daily_rainfall - @last_daily_rainfall
                #puts this_daily_rainfall
                #this_daily_rainfall = this_daily_rainfall / 0.5
                if(this_daily_rainfall > 0)
                    csv << [ "#{date_taken}", "#{simulated_time_taken}", "# 
                   {this_daily_rainfall}" ]
                else
                    if(this_daily_rainfall != '-9999' && this_daily_rainfall == 0)
                        csv << [ "#{date_taken}", "#{simulated_time_taken}", "0" ]
                    end
                    if(this_daily_rainfall != '-9999' && this_daily_rainfall <  0)
                        csv << [ "#{date_taken}", "#{simulated_time_taken}", "# 
                   {current_daily_rainfall}" ]
                    end
                end
                @last_daily_rainfall = line[:'daily_rainfall']
            end     
        end
    end
    puts "CSV completed for #{main_id}"
    #exit
    end
end

我无法找到我缺少的东西,请帮我解决这个问题。我知道我一定是在这里做错了,但我就是不知道是什么

标签: rubysequel

解决方案


推荐阅读