Module: ArJdbc::AS400
- Includes:
- DB2
- Defined in:
- lib/arjdbc/db2/as400.rb
Constant Summary
collapse
- ADAPTER_NAME =
'AS400'.freeze
- DRIVER_NAME =
'com.ibm.as400.access.AS400JDBCDriver'.freeze
Constants included
from DB2
DB2::HAVE_LIMIT, DB2::HAVE_PRECISION, DB2::HAVE_SCALE, DB2::NATIVE_DATABASE_TYPES
Class Method Summary
collapse
Instance Method Summary
collapse
Methods included from DB2
#add_column, #add_column_options!, #add_index, #add_limit_offset!, arel2_visitors, #change_column, #change_column_default, #change_column_null, #columns, #configure_connection, #create_table, #drop_database, #empty_insert_statement_value, emulate_booleans?, #indexes, #jdbc_column_class, #last_insert_id, #modify_types, #native_database_types, #next_sequence_value, #pk_and_sequence_for, #quote, #quote_column_name, #quote_time, #quoted_date, #recreate_database, #remove_column, #remove_index!, #rename_table, #runstats_for_table, #schema, #schema=, #select, #supports_views?, #table_definition, #tables, #truncate, #type_to_sql, #update_lob_value?, update_lob_values=, update_lob_values?
Class Method Details
.arel_visitor_type(config = nil) ⇒ Object
17
|
# File 'lib/arjdbc/db2/as400.rb', line 17
def self.arel_visitor_type(config = nil); DB2.arel_visitor_type(config); end
|
.column_selector ⇒ Object
19
20
21
|
# File 'lib/arjdbc/db2/as400.rb', line 19
def self.column_selector
[ /as400/i, lambda { |config, column| column.extend(Column) } ]
end
|
.emulate_booleans ⇒ Object
Boolean emulation can be disabled using :
ArJdbc::AS400.emulate_booleans = false
27
|
# File 'lib/arjdbc/db2/as400.rb', line 27
def self.emulate_booleans; DB2.emulate_booleans; end
|
.emulate_booleans=(emulate) ⇒ Object
28
|
# File 'lib/arjdbc/db2/as400.rb', line 28
def self.emulate_booleans=(emulate); DB2.emulate_booleans = emulate; end
|
.jdbc_connection_class ⇒ Object
Instance Method Details
#adapter_name ⇒ Object
32
33
34
|
# File 'lib/arjdbc/db2/as400.rb', line 32
def adapter_name
ADAPTER_NAME
end
|
#execute_table_change(sql, table_name, name = nil) ⇒ Object
52
53
54
|
# File 'lib/arjdbc/db2/as400.rb', line 52
def execute_table_change(sql, table_name, name = nil)
execute_and_auto_confirm(sql, name)
end
|
#prefetch_primary_key?(table_name = nil) ⇒ Boolean
37
38
39
40
41
42
43
44
|
# File 'lib/arjdbc/db2/as400.rb', line 37
def prefetch_primary_key?(table_name = nil)
names = table_name.upcase.split(".")
sql = "SELECT 1 FROM SYSIBM.SQLPRIMARYKEYS WHERE "
sql << "TABLE_SCHEM = '#{names.first}' AND " if names.size == 2
sql << "TABLE_NAME = '#{names.last}'"
select_one(sql).nil?
end
|
#rename_column(table_name, column_name, new_column_name) ⇒ Object
47
48
49
|
# File 'lib/arjdbc/db2/as400.rb', line 47
def rename_column(table_name, column_name, new_column_name)
raise NotImplementedError, "rename_column is not supported on IBM iSeries"
end
|
#table_exists?(name) ⇒ Boolean
disable all schemas browsing when default schema is specified
90
91
92
93
|
# File 'lib/arjdbc/db2/as400.rb', line 90
def table_exists?(name)
return false unless name
schema ? @connection.table_exists?(name, schema) : @connection.table_exists?(name)
end
|