bin/console in odbc_adapter-4.2.1 vs bin/console in odbc_adapter-4.2.2
- old
+ new
@@ -1,61 +1,7 @@
#!/usr/bin/env ruby
require 'bundler/setup'
require 'odbc_adapter'
-require 'pry'
-require 'odbc_adapter/adapters/postgresql_odbc_adapter'
-ODBCAdapter.register(/snowflake/, ODBCAdapter::Adapters::PostgreSQLODBCAdapter) do
- # Here until we upgrade the ODBC driver
- class DecimalCaster
- attr_reader :column
-
- def initialize(column)
- @column = column
- end
-
- def cast(value)
- return if value.nil?
- column.scale.zero? ? value.to_i : value.to_f
- end
- end
-
- # Handles strings that aren't utf-8 encoded
- class StringEncodingCaster
- def cast(value)
- value.is_a?(String) ? value.force_encoding('UTF-8') : value
- end
- end
-
- def quote_column_name(name)
- name.to_s
- end
-
- private
-
- # Monkey-patch the type casting for SQL_DECIMAL columns until we upgrade the ODBC driver
- def dbms_type_cast(columns, values)
- casters = Hash.new { |h, k| h[k] = [StringEncodingCaster.new] }
-
- columns.each_with_index do |column, idx|
- casters[idx] << DecimalCaster.new(column) if column.type == ODBC::SQL_DECIMAL
- end
-
- values.each do |row|
- row.each_index do |idx|
- casters[idx].each { |caster| row[idx] = caster.cast(row[idx]) }
- end
- end
-
- values
- end
-end
-
-ActiveRecord::Base.establish_connection(adapter: 'odbc', dsn: 'LocalyticsProductionSnowflake')
-
-binding.pry
-
-# class FactSession < ActiveRecord::Base
-# end
-#
-# puts FactSession.where(device_new: true).to_sql
+require 'irb'
+IRB.start