module Sequel::DB2::DatasetMethods

Constants

BITWISE_METHOD_MAP
BLOB_CLOSE
BLOB_OPEN
BOOL_FALSE
BOOL_TRUE
CAST_STRING_CLOSE
CAST_STRING_OPEN
EMPTY_FROM_TABLE
EMULATED_FUNCTION_MAP
FETCH_FIRST
FETCH_FIRST_ROW_ONLY
HSTAR
PAREN_CLOSE
PAREN_OPEN
ROWS_ONLY

Public Instance Methods

cast_sql_append(sql, expr, type) click to toggle source

DB2 casts strings using RTRIM and CHAR instead of VARCHAR.

# File lib/sequel/adapters/shared/db2.rb, line 321
def cast_sql_append(sql, expr, type)
  if(type == String)
    sql << "RTRIM(CHAR("
    literal_append(sql, expr)
    sql << "))"
  else
    super
  end
end
complex_expression_sql_append(sql, op, args) click to toggle source
# File lib/sequel/adapters/shared/db2.rb, line 331
def complex_expression_sql_append(sql, op, args)
  case op
  when :&, :|, :^, :%, :<<, :>>
    complex_expression_emulate_append(sql, op, args)
  when :'B~'
    literal_append(sql, SQL::Function.new(:BITNOT, *args))
  when :extract
    sql << args[0].to_s
    sql << '('
    literal_append(sql, args[1])
    sql << ')'
  else
    super
  end
end
quote_identifiers?() click to toggle source
# File lib/sequel/adapters/shared/db2.rb, line 347
def quote_identifiers?
  @opts.fetch(:quote_identifiers, false)
end
supports_cte?(type=:select) click to toggle source
# File lib/sequel/adapters/shared/db2.rb, line 351
def supports_cte?(type=:select)
  type == :select
end
supports_group_cube?() click to toggle source

DB2 supports GROUP BY CUBE

# File lib/sequel/adapters/shared/db2.rb, line 356
def supports_group_cube?
  true
end
supports_group_rollup?() click to toggle source

DB2 supports GROUP BY ROLLUP

# File lib/sequel/adapters/shared/db2.rb, line 361
def supports_group_rollup?
  true
end
supports_grouping_sets?() click to toggle source

DB2 supports GROUPING SETS

# File lib/sequel/adapters/shared/db2.rb, line 366
def supports_grouping_sets?
  true
end
supports_is_true?() click to toggle source

DB2 does not support IS TRUE.

# File lib/sequel/adapters/shared/db2.rb, line 371
def supports_is_true?
  false
end
supports_lateral_subqueries?() click to toggle source

DB2 supports lateral subqueries

# File lib/sequel/adapters/shared/db2.rb, line 376
def supports_lateral_subqueries?
  true
end
supports_multiple_column_in?() click to toggle source

DB2 does not support multiple columns in IN.

# File lib/sequel/adapters/shared/db2.rb, line 381
def supports_multiple_column_in?
  false
end
supports_select_all_and_column?() click to toggle source

DB2 only allows * in SELECT if it is the only thing being selected.

# File lib/sequel/adapters/shared/db2.rb, line 386
def supports_select_all_and_column?
  false
end
supports_timestamp_usecs?() click to toggle source

DB2 does not support fractional seconds in timestamps.

# File lib/sequel/adapters/shared/db2.rb, line 391
def supports_timestamp_usecs?
  false
end
supports_where_true?() click to toggle source

DB2 does not support WHERE 1.

# File lib/sequel/adapters/shared/db2.rb, line 401
def supports_where_true?
  false
end
supports_window_functions?() click to toggle source

DB2 supports window functions

# File lib/sequel/adapters/shared/db2.rb, line 396
def supports_window_functions?
  true
end