Swallow pointless exceptions when the foreign key list pragma doesn't return any rows.
# File lib/sequel/adapters/jdbc/sqlite.rb, line 15 def foreign_key_list(table, opts={}) super rescue Sequel::DatabaseError => e raise unless e.message =~ FOREIGN_KEY_ERROR_RE [] end
Swallow pointless exceptions when the index list pragma doesn't return any rows.
# File lib/sequel/adapters/jdbc/sqlite.rb, line 24 def indexes(table, opts={}) super rescue Sequel::DatabaseError => e raise unless e.message =~ FOREIGN_KEY_ERROR_RE {} end
Default to a single connection for a memory database.
# File lib/sequel/adapters/jdbc/sqlite.rb, line 48 def connection_pool_default_options o = super uri == 'jdbc:sqlite::memory:' ? o.merge(:max_connections=>1) : o end
# File lib/sequel/adapters/jdbc/sqlite.rb, line 34 def database_error_regexps DATABASE_ERROR_REGEXPS end
Use last_insert_rowid() to get the last inserted id.
# File lib/sequel/adapters/jdbc/sqlite.rb, line 39 def last_insert_id(conn, opts={}) statement(conn) do |stmt| rs = stmt.executeQuery(LAST_INSERT_ROWID) rs.next rs.getInt(1) end end
Execute the connection pragmas on the connection.
# File lib/sequel/adapters/jdbc/sqlite.rb, line 54 def setup_connection(conn) conn = super(conn) statement(conn) do |stmt| connection_pragmas.each{|s| log_yield(s){stmt.execute(s)}} end conn end