class Sequel::Mysql2::Dataset
Dataset class for MySQL datasets accessed via the native driver.
Public Instance Methods
fetch_rows(sql) { |h| ... }
click to toggle source
Yield all rows matching this dataset.
# File lib/sequel/adapters/mysql2.rb, line 136 def fetch_rows(sql) execute(sql) do |r| @columns = if identifier_output_method r.fields.map!{|c| output_identifier(c.to_s)} else r.fields end r.each(:cast_booleans=>convert_tinyint_to_bool?){|h| yield h} end self end
Private Instance Methods
convert_tinyint_to_bool?()
click to toggle source
Whether to cast tinyint(1) columns to integer instead of boolean. By default, uses the opposite of the database's convert_tinyint_to_bool setting. Exists for compatibility with the mysql adapter.
# File lib/sequel/adapters/mysql2.rb, line 153 def convert_tinyint_to_bool? @db.convert_tinyint_to_bool end
execute(sql, opts={}, &block)
click to toggle source
Set the :type option to :select if it hasn't been set.
Calls superclass method
Sequel::Dataset#execute
# File lib/sequel/adapters/mysql2.rb, line 158 def execute(sql, opts={}, &block) super(sql, {:type=>:select}.merge(opts), &block) end
literal_string_append(sql, v)
click to toggle source
Handle correct quoting of strings using ::Mysql2::Client#escape.
# File lib/sequel/adapters/mysql2.rb, line 163 def literal_string_append(sql, v) sql << "'" << db.synchronize{|c| c.escape(v)} << "'" end