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 299 def cast_sql_append(sql, expr, type) 300 if(type == String) 301 sql << "RTRIM(CHAR(" 302 literal_append(sql, expr) 303 sql << "))" 304 else 305 super 306 end 307 end
complex_expression_sql_append(sql, op, args)
[show source]
# File lib/sequel/adapters/shared/db2.rb 309 def complex_expression_sql_append(sql, op, args) 310 case op 311 when :&, :|, :^, :%, :<<, :>> 312 complex_expression_emulate_append(sql, op, args) 313 when :'B~' 314 literal_append(sql, SQL::Function.new(:BITNOT, *args)) 315 when :extract 316 sql << args[0].to_s 317 sql << '(' 318 literal_append(sql, args[1]) 319 sql << ')' 320 else 321 super 322 end 323 end
quote_identifiers?()
[show source]
# File lib/sequel/adapters/shared/db2.rb 325 def quote_identifiers? 326 @opts.fetch(:quote_identifiers, false) 327 end
supports_cte?(type=:select)
[show source]
# File lib/sequel/adapters/shared/db2.rb 329 def supports_cte?(type=:select) 330 type == :select 331 end
supports_group_cube?()
DB2
supports GROUP BY CUBE
[show source]
# File lib/sequel/adapters/shared/db2.rb 334 def supports_group_cube? 335 true 336 end
supports_group_rollup?()
DB2
supports GROUP BY ROLLUP
[show source]
# File lib/sequel/adapters/shared/db2.rb 339 def supports_group_rollup? 340 true 341 end
supports_grouping_sets?()
DB2
supports GROUPING SETS
[show source]
# File lib/sequel/adapters/shared/db2.rb 344 def supports_grouping_sets? 345 true 346 end
supports_is_true?()
DB2
does not support IS TRUE.
[show source]
# File lib/sequel/adapters/shared/db2.rb 349 def supports_is_true? 350 false 351 end
supports_lateral_subqueries?()
DB2
supports lateral subqueries
[show source]
# File lib/sequel/adapters/shared/db2.rb 354 def supports_lateral_subqueries? 355 true 356 end
supports_merge?()
DB2
supports MERGE
[show source]
# File lib/sequel/adapters/shared/db2.rb 359 def supports_merge? 360 true 361 end
supports_multiple_column_in?()
DB2
does not support multiple columns in IN.
[show source]
# File lib/sequel/adapters/shared/db2.rb 364 def supports_multiple_column_in? 365 false 366 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 369 def supports_select_all_and_column? 370 false 371 end
supports_where_true?()
DB2
does not support WHERE 1.
[show source]
# File lib/sequel/adapters/shared/db2.rb 379 def supports_where_true? 380 false 381 end
supports_window_functions?()
DB2
supports window functions
[show source]
# File lib/sequel/adapters/shared/db2.rb 374 def supports_window_functions? 375 true 376 end