Module | Sequel::Oracle::DatasetMethods
In: | lib/sequel/adapters/shared/oracle.rb

### Methods

empty? except insert requires_sql_standard_datetimes? sequence supports_intersect_except_all? supports_timestamp_timezones? supports_window_functions?

### Constants

SELECT_CLAUSE_METHODS | = | Dataset.clause_methods(:select, %w'with distinct columns from join where group having compounds order limit')

### Public Instance methods

empty?()

[Source]

         # File lib/sequel/adapters/shared/oracle.rb, line 117
    117:       def empty?
    118:         db[:dual].where(exists).get(1) == nil
    119:       end

except(dataset, opts={})

Oracle uses MINUS instead of EXCEPT, and doesn‘t support EXCEPT ALL

[Source]

         # File lib/sequel/adapters/shared/oracle.rb, line 111
    111:       def except(dataset, opts={})
    112:         opts = {:all=>opts} unless opts.is_a?(Hash)
    113:         raise(Sequel::Error, "EXCEPT ALL not supported") if opts[:all]
    114:         compound_clone(:minus, dataset, opts)
    115:       end

insert(*args)

If this dataset is associated with a sequence, return the most recently inserted sequence value.

[Source]

         # File lib/sequel/adapters/shared/oracle.rb, line 123
    123:       def insert(*args)
    124:         r = super
    125:         if s = opts[:sequence]
    126:           with_sql("SELECT #{literal(s)}.currval FROM dual").single_value.to_i
    127:         else
    128:           r
    129:         end
    130:       end

requires_sql_standard_datetimes?()

Oracle requires SQL standard datetimes

[Source]

         # File lib/sequel/adapters/shared/oracle.rb, line 133
    133:       def requires_sql_standard_datetimes?
    134:         true
    135:       end

sequence(s)

Create a copy of this dataset associated to the given sequence name, which will be used when calling insert to find the most recently inserted value for the sequence.

[Source]

         # File lib/sequel/adapters/shared/oracle.rb, line 140
    140:       def sequence(s)
    141:         clone(:sequence=>s)
    142:       end

supports_intersect_except_all?()

Oracle does not support INTERSECT ALL or EXCEPT ALL

[Source]

         # File lib/sequel/adapters/shared/oracle.rb, line 145
    145:       def supports_intersect_except_all?
    146:         false
    147:       end

supports_timestamp_timezones?()

Oracle supports timezones in literal timestamps.

[Source]

         # File lib/sequel/adapters/shared/oracle.rb, line 150
    150:       def supports_timestamp_timezones?
    151:         true
    152:       end

supports_window_functions?()

Oracle supports window functions

[Source]

         # File lib/sequel/adapters/shared/oracle.rb, line 155
    155:       def supports_window_functions?
    156:         true
    157:       end

[Validate]