Methods
Public Instance
Constants
APOS | = | Dataset::APOS | ||
BITCOMP_CLOSE | = | ") - 1)".freeze | ||
BITCOMP_OPEN | = | "((0 - ".freeze | ||
BITWISE_METHOD_MAP | = | {:& =>:BITAND, :| => :BITOR, :^ => :BITXOR} | ||
H2_CLOB_METHOD | = | TYPE_TRANSLATOR_INSTANCE.method(:h2_clob) | ||
HSTAR | = | "H*".freeze | ||
ILIKE_PLACEHOLDER | = | ["CAST(".freeze, " AS VARCHAR_IGNORECASE)".freeze].freeze | ||
SELECT_CLAUSE_METHODS | = | clause_methods(:select, %w'select distinct columns from join where group having compounds order limit') | ||
TIME_FORMAT | = | "'%H:%M:%S'".freeze |
Public Instance methods
complex_expression_sql_append
(sql, op, args)
Emulate the case insensitive LIKE operator and the bitwise operators.
[show source]
# File lib/sequel/adapters/jdbc/h2.rb, line 155 def complex_expression_sql_append(sql, op, args) case op when :ILIKE, :"NOT ILIKE" super(sql, (op == :ILIKE ? :LIKE : :"NOT LIKE"), [SQL::PlaceholderLiteralString.new(ILIKE_PLACEHOLDER, [args.at(0)]), args.at(1)]) when :&, :|, :^ sql << complex_expression_arg_pairs(args){|a, b| literal(SQL::Function.new(BITWISE_METHOD_MAP[op], a, b))} when :<< sql << complex_expression_arg_pairs(args){|a, b| "(#{literal(a)} * POWER(2, #{literal(b)}))"} when :>> sql << complex_expression_arg_pairs(args){|a, b| "(#{literal(a)} / POWER(2, #{literal(b)}))"} when :'B~' sql << BITCOMP_OPEN literal_append(sql, args.at(0)) sql << BITCOMP_CLOSE else super end end
requires_sql_standard_datetimes?
()
H2 requires SQL standard datetimes
[show source]
# File lib/sequel/adapters/jdbc/h2.rb, line 175 def requires_sql_standard_datetimes? true end
supports_is_true?
()
H2 doesn't support IS TRUE
[show source]
# File lib/sequel/adapters/jdbc/h2.rb, line 180 def supports_is_true? false end
supports_join_using?
()
H2 doesn't support JOIN USING
[show source]
# File lib/sequel/adapters/jdbc/h2.rb, line 185 def supports_join_using? false end
supports_multiple_column_in?
()
H2 doesn't support multiple columns in IN/NOT IN
[show source]
# File lib/sequel/adapters/jdbc/h2.rb, line 190 def supports_multiple_column_in? false end