class Sequel::Amalgalite::Database

  1. lib/sequel/adapters/amalgalite.rb
Superclass: Sequel::Database

Public Instance methods

connect(server)

Connect to the database. Since SQLite is a file based database, the only options available are :database (to specify the database name), and :timeout, to specify how long to wait for the database to be available if it is locked, given in milliseconds (default is 5000).

[show source]
    # File lib/sequel/adapters/amalgalite.rb
115 def connect(server)
116   opts = server_opts(server)
117   opts[:database] = ':memory:' if blank_object?(opts[:database])
118   db = ::Amalgalite::Database.new(opts[:database])
119   db.busy_handler(::Amalgalite::BusyTimeout.new(opts.fetch(:timeout, 5000)/50, 50))
120   db.type_map = SequelTypeMap.new(self)
121   connection_pragmas.each{|s| log_connection_yield(s, db){db.execute_batch(s)}}
122   db
123 end
database_type()
[show source]
    # File lib/sequel/adapters/amalgalite.rb
125 def database_type
126   :sqlite
127 end
execute(sql, opts=OPTS)
[show source]
    # File lib/sequel/adapters/amalgalite.rb
142 def execute(sql, opts=OPTS)
143   _execute(sql, opts) do |conn|
144     begin
145       yield(stmt = log_connection_yield(sql, conn){conn.prepare(sql)})
146     ensure
147       stmt.close if stmt
148     end
149   end
150 end
execute_ddl(sql, opts=OPTS)
[show source]
    # File lib/sequel/adapters/amalgalite.rb
129 def execute_ddl(sql, opts=OPTS)
130   _execute(sql, opts){|conn| log_connection_yield(sql, conn){conn.execute_batch(sql)}}
131   nil
132 end
execute_dui(sql, opts=OPTS)
[show source]
    # File lib/sequel/adapters/amalgalite.rb
134 def execute_dui(sql, opts=OPTS)
135   _execute(sql, opts){|conn| log_connection_yield(sql, conn){conn.execute_batch(sql)}; conn.row_changes}
136 end
execute_insert(sql, opts=OPTS)
[show source]
    # File lib/sequel/adapters/amalgalite.rb
138 def execute_insert(sql, opts=OPTS)
139   _execute(sql, opts){|conn| log_connection_yield(sql, conn){conn.execute_batch(sql)}; conn.last_insert_rowid}
140 end
single_value(sql, opts=OPTS)

Run the given SQL with the given arguments and return the first value of the first row.

[show source]
    # File lib/sequel/adapters/amalgalite.rb
153 def single_value(sql, opts=OPTS)
154   _execute(sql, opts){|conn| log_connection_yield(sql, conn){conn.first_value_from(sql)}}
155 end