Class: ActiveRecord::Base

Inherits:
Object
  • Object
show all
Defined in:
lib/arjdbc/teradata/connection_methods.rb

Class Method Summary collapse

Class Method Details

.teradata_connection(config) ⇒ Object Also known as: jdbcteradata_connection



3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# File 'lib/arjdbc/teradata/connection_methods.rb', line 3

def teradata_connection(config)
  begin
    require 'jdbc/teradata'
    ::Jdbc::Teradata.load_driver(:require) if defined?(::Jdbc::Teradata.load_driver)
  rescue LoadError # assuming driver.jar is on the class-path
  end

  config[:username] ||= Java::JavaLang::System.get_property('user.name')
  config[:host] ||= 'localhost'
  config[:port] ||= 1025
  config[:tmode] ||= 'ANSI' # ANSI, Teradata, DEFAULT
  config[:charset] ||= 'UTF8'
  config[:cop] ||= 'OFF'
  config[:url] ||= "jdbc:teradata://#{config[:host]}/DATABASE=#{config[:database]},DBS_PORT=#{config[:port]},COP=#{config[:cop]},tmode=#{config[:tmode]},charset=#{config[:charset]}"
  config[:driver] ||= 'com.teradata.jdbc.TeraDriver'
  config[:adapter_class] = ActiveRecord::ConnectionAdapters::TeradataAdapter
  config[:adapter_spec] = ::ArJdbc::Teradata
  jdbc_connection(config)
end