Class: Sequel::MySQL::Dataset
- Inherits:
-
Dataset
- Object
- Dataset
- Sequel::MySQL::Dataset
- Defined in:
- lib/sequel/mysql.rb
Instance Method Summary collapse
- #count(opts = nil) ⇒ Object
- #delete(opts = nil) ⇒ Object
- #each(opts = nil, &block) ⇒ Object
- #first_record(opts = nil) ⇒ Object
- #insert(values = nil, opts = nil) ⇒ Object
- #query_each(sql, use_record_class = false) ⇒ Object
- #query_first(sql, use_record_class = false) ⇒ Object
- #query_single_value(sql) ⇒ Object
- #update(values, opts = nil) ⇒ Object
Instance Method Details
#count(opts = nil) ⇒ Object
60 61 62 |
# File 'lib/sequel/mysql.rb', line 60 def count(opts = nil) query_single_value(count_sql(opts)).to_i end |
#delete(opts = nil) ⇒ Object
72 73 74 |
# File 'lib/sequel/mysql.rb', line 72 def delete(opts = nil) @db.execute_affected(delete_sql(opts)) end |
#each(opts = nil, &block) ⇒ Object
51 52 53 54 |
# File 'lib/sequel/mysql.rb', line 51 def each(opts = nil, &block) query_each(select_sql(opts), true, &block) self end |
#first_record(opts = nil) ⇒ Object
56 57 58 |
# File 'lib/sequel/mysql.rb', line 56 def first_record(opts = nil) query_first(select_sql(opts), true) end |
#insert(values = nil, opts = nil) ⇒ Object
64 65 66 |
# File 'lib/sequel/mysql.rb', line 64 def insert(values = nil, opts = nil) @db.execute_insert(insert_sql(values, opts)) end |
#query_each(sql, use_record_class = false) ⇒ Object
76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 |
# File 'lib/sequel/mysql.rb', line 76 def query_each(sql, use_record_class = false) @db.synchronize do result = @db.execute(sql) begin if use_record_class && @record_class result.each_hash {|r| yield @record_class.new(r)} else result.each_hash {|r| yield r} end ensure result.free end end self end |
#query_first(sql, use_record_class = false) ⇒ Object
92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 |
# File 'lib/sequel/mysql.rb', line 92 def query_first(sql, use_record_class = false) @db.synchronize do result = @db.execute(sql) begin if use_record_class && @record_class @record_class.new(result.fetch_hash) else result.fetch_hash end ensure result.free end row end end |
#query_single_value(sql) ⇒ Object
108 109 110 111 112 113 114 115 116 117 |
# File 'lib/sequel/mysql.rb', line 108 def query_single_value(sql) @db.synchronize do result = @db.execute(sql) begin return result.fetch_hash.values[0] ensure result.free end end end |
#update(values, opts = nil) ⇒ Object
68 69 70 |
# File 'lib/sequel/mysql.rb', line 68 def update(values, opts = nil) @db.execute_affected(update_sql(values, opts)) end |