Methods
Public Instance
- cast_sql_append
- complex_expression_sql_append
- quote_identifiers?
- supports_cte?
- supports_group_cube?
- supports_group_rollup?
- supports_grouping_sets?
- supports_is_true?
- supports_lateral_subqueries?
- supports_merge?
- supports_multiple_column_in?
- supports_select_all_and_column?
- supports_where_true?
- supports_window_functions?
Included modules
Constants
| BITWISE_METHOD_MAP | = | {:& =>:BITAND, :| => :BITOR, :^ => :BITXOR, :'B~'=>:BITNOT}.freeze |
Public Instance methods
cast_sql_append(sql, expr, type)
DB2 casts strings using RTRIM and CHAR instead of VARCHAR.
[show source]
# File lib/sequel/adapters/shared/db2.rb 302 def cast_sql_append(sql, expr, type) 303 if(type == String) 304 sql << "RTRIM(CHAR(" 305 literal_append(sql, expr) 306 sql << "))" 307 else 308 super 309 end 310 end
complex_expression_sql_append(sql, op, args)
[show source]
# File lib/sequel/adapters/shared/db2.rb 312 def complex_expression_sql_append(sql, op, args) 313 case op 314 when :&, :|, :^, :%, :<<, :>> 315 complex_expression_emulate_append(sql, op, args) 316 when :'B~' 317 literal_append(sql, SQL::Function.new(:BITNOT, *args)) 318 when :extract 319 sql << args[0].to_s 320 sql << '(' 321 literal_append(sql, args[1]) 322 sql << ')' 323 else 324 super 325 end 326 end
quote_identifiers?()
[show source]
# File lib/sequel/adapters/shared/db2.rb 328 def quote_identifiers? 329 @opts.fetch(:quote_identifiers, false) 330 end
supports_cte?(type=:select)
[show source]
# File lib/sequel/adapters/shared/db2.rb 332 def supports_cte?(type=:select) 333 type == :select 334 end
supports_group_cube?()
DB2 supports GROUP BY CUBE
[show source]
# File lib/sequel/adapters/shared/db2.rb 337 def supports_group_cube? 338 true 339 end
supports_group_rollup?()
DB2 supports GROUP BY ROLLUP
[show source]
# File lib/sequel/adapters/shared/db2.rb 342 def supports_group_rollup? 343 true 344 end
supports_grouping_sets?()
DB2 supports GROUPING SETS
[show source]
# File lib/sequel/adapters/shared/db2.rb 347 def supports_grouping_sets? 348 true 349 end
supports_is_true?()
DB2 does not support IS TRUE.
[show source]
# File lib/sequel/adapters/shared/db2.rb 352 def supports_is_true? 353 false 354 end
supports_lateral_subqueries?()
DB2 supports lateral subqueries
[show source]
# File lib/sequel/adapters/shared/db2.rb 357 def supports_lateral_subqueries? 358 true 359 end
supports_merge?()
DB2 supports MERGE
[show source]
# File lib/sequel/adapters/shared/db2.rb 362 def supports_merge? 363 true 364 end
supports_multiple_column_in?()
DB2 does not support multiple columns in IN.
[show source]
# File lib/sequel/adapters/shared/db2.rb 367 def supports_multiple_column_in? 368 false 369 end
supports_select_all_and_column?()
DB2 only allows * in SELECT if it is the only thing being selected.
[show source]
# File lib/sequel/adapters/shared/db2.rb 372 def supports_select_all_and_column? 373 false 374 end
supports_where_true?()
DB2 does not support WHERE 1.
[show source]
# File lib/sequel/adapters/shared/db2.rb 382 def supports_where_true? 383 false 384 end
supports_window_functions?()
DB2 supports window functions
[show source]
# File lib/sequel/adapters/shared/db2.rb 377 def supports_window_functions? 378 true 379 end