lib/mini_sql/sqlite/connection.rb in mini_sql-1.4.0 vs lib/mini_sql/sqlite/connection.rb in mini_sql-1.5.0
- old
+ new
@@ -19,62 +19,60 @@
end
end
def query_single(sql, *params)
# a bit lazy can be optimized
- run(sql, *params).flatten!
+ run(sql, params).flatten!
end
def query_hash(sql, *params)
r = []
- run(sql, *params) do |set|
+ run(sql, params) do |set|
set.each_hash do |h|
r << h
end
end
r
end
def query_array(sql, *params)
- run(sql, *params)
+ run(sql, params)
end
def exec(sql, *params)
start = raw_connection.total_changes
- r = run(sql, *params)
+ r = run(sql, params)
# this is not safe for multithreading, also for DELETE from TABLE will return
# incorrect data
if r.length > 0
r.length
else
raw_connection.total_changes - start
end
end
def query(sql, *params)
- run(sql, *params) do |set|
+ run(sql, params) do |set|
deserializer_cache.materialize(set)
end
end
def query_decorator(decorator, sql, *params)
- run(sql, *params) do |set|
+ run(sql, params) do |set|
deserializer_cache.materialize(set, decorator)
end
end
def escape_string(str)
str.gsub("'", "''")
end
private
- def run(sql, *params)
- if params && params.length > 0
- sql = param_encoder.encode(sql, *params)
- end
+ def run(sql, params)
+ sql = to_sql(sql, *params)
if block_given?
stmt = SQLite3::Statement.new(raw_connection, sql)
result = yield stmt.execute
stmt.close
result