Class Sequel::Mysql2::Dataset
In: lib/sequel/adapters/mysql2.rb
Parent: Sequel::Dataset

Dataset class for MySQL datasets accessed via the native driver.

Methods

Included Modules

Sequel::MySQL::DatasetMethods Sequel::MySQL::PreparedStatements::DatasetMethods

Constants

STREAMING_SUPPORTED = ::Mysql2::VERSION >= '0.3.12'
DatasetClass = self

Public Instance methods

Yield all rows matching this dataset.

[Source]

     # File lib/sequel/adapters/mysql2.rb, line 153
153:       def fetch_rows(sql)
154:         execute(sql) do |r|
155:           @columns = if identifier_output_method
156:             r.fields.map!{|c| output_identifier(c.to_s)}
157:           else
158:             r.fields
159:           end
160:           r.each(:cast_booleans=>convert_tinyint_to_bool?){|h| yield h}
161:         end
162:         self
163:       end

Use streaming to implement paging if Mysql2 supports it.

[Source]

     # File lib/sequel/adapters/mysql2.rb, line 166
166:       def paged_each(opts=OPTS, &block)
167:         if STREAMING_SUPPORTED
168:           stream.each(&block)
169:         else
170:           super
171:         end
172:       end

Return a clone of the dataset that will stream rows when iterating over the result set, so it can handle large datasets that won‘t fit in memory (Requires mysql 0.3.12+ to have an effect).

[Source]

     # File lib/sequel/adapters/mysql2.rb, line 177
177:       def stream
178:         clone(:stream=>true)
179:       end

[Validate]