class SQLite3::Statement

def execute!(*bind_vars)

See also #bind_params, #execute.

end
...
stmt.execute! do |row|
stmt = db.prepare("select * from table")

Example:

Any parameters will be bound to the statement using #bind_params.

yielded to the block.
rows returned by executing the statement. Otherwise, each row will be
Execute the statement. If no block was given, this returns an array of
def execute!(*bind_vars)
  result = execute(*bind_vars)
  rows = [] unless block_given?
  while row = result.next
    if block_given?
      yield row
    else
      rows << row
    end
  end
  rows
end