Class: ActiveRecord::ConnectionAdapters::IBM_DB2_ZOS_8

Inherits:
IBM_DB2_ZOS show all
Includes:
HostedDataServer
Defined in:
lib/active_record/connection_adapters/ibm_db_adapter.rb

Overview

class IBM_DB2_ZOS

Constant Summary

Constants included from HostedDataServer

HostedDataServer::RESERVED_WORDS

Instance Method Summary collapse

Methods included from HostedDataServer

#check_reserved_words

Methods inherited from IBM_DB2_ZOS

#change_column_null, #create_index_after_table, #remove_column, #set_binary_default

Methods inherited from IBM_DB2

#change_column, #change_column_null, #get_datetime_mapping, #get_double_mapping, #get_time_mapping, #initialize, #last_generated_id, #primary_key_definition, #set_binary_default, #set_binary_value, #set_case, #set_text_default

Methods inherited from IBM_DataServer

#change_column_null, #check_reserved_words, #columns, #create_database, #create_index_after_table, #drop_database, #execute, #get_datetime_mapping, #get_double_mapping, #get_time_mapping, #indexes, #initialize, #last_generated_id, #limit_not_supported_types, #prepare, #remove_column, #reorg_table, #select, #select_rows, #set_binary_default, #set_binary_value, #set_case, #set_schema, #set_text_default, #task_charset, #task_collation, #task_create, #task_drop, #task_purge, #task_structure_dump, #task_structure_load

Constructor Details

This class inherits a constructor from ActiveRecord::ConnectionAdapters::IBM_DB2

Instance Method Details

#change_column_default(table_name, column_name, default) ⇒ Object

Raises:

  • (NotImplementedError)


3182
3183
3184
3185
# File 'lib/active_record/connection_adapters/ibm_db_adapter.rb', line 3182

def change_column_default(table_name, column_name, default)
  raise NotImplementedError,
  "DB2 for zOS data server version 8 does not support changing the column default"
end

#query_offset_limit(sql, offset, limit) ⇒ Object



3157
3158
3159
3160
3161
3162
# File 'lib/active_record/connection_adapters/ibm_db_adapter.rb', line 3157

def query_offset_limit(sql, offset, limit)
  if (!limit.nil?)
     sql << " FETCH FIRST #{limit} ROWS ONLY"
  end
  return sql
end

#query_offset_limit!(sql, offset, limit, options) ⇒ Object



3164
3165
3166
3167
3168
3169
# File 'lib/active_record/connection_adapters/ibm_db_adapter.rb', line 3164

def query_offset_limit!(sql, offset, limit, options)
  if (!limit.nil?)
     sql << " FETCH FIRST #{limit} ROWS ONLY"
  end
  options[:paramArray] = []
end

#rename_column(table_name, column_name, new_column_name) ⇒ Object

Raises:

  • (NotImplementedError)


3178
3179
3180
# File 'lib/active_record/connection_adapters/ibm_db_adapter.rb', line 3178

def rename_column(table_name, column_name, new_column_name)
  raise NotImplementedError, "rename_column is not implemented for DB2 on zOS 8"
end

#setup_for_lob_tableObject

When issued, this call does the following:

DB2 creates LOB table spaces, auxiliary tables, and indexes on auxiliary
tables for LOB columns.


3174
3175
3176
# File 'lib/active_record/connection_adapters/ibm_db_adapter.rb', line 3174

def setup_for_lob_table()
  execute "SET CURRENT RULES = 'STD'"
end