Sha256: 7dfc01c5c59082960d1c0ad7ab6daa367354cf72a0160b9b67199153d2bd36dd

Contents?: true

Size: 1.25 KB

Versions: 12

Compression:

Stored size: 1.25 KB

Contents

require 'sequel_core/adapters/shared/sqlite'

module Sequel
  module JDBC
    # Database and Dataset support for SQLite databases accessed via JDBC.
    module SQLite
      # Instance methods for SQLite Database objects accessed via JDBC.
      module DatabaseMethods
        include Sequel::SQLite::DatabaseMethods
        
        # Return Sequel::JDBC::SQLite::Dataset object with the given opts.
        def dataset(opts=nil)
          Sequel::JDBC::SQLite::Dataset.new(self, opts)
        end
        
        private
        
        # Use last_insert_rowid() to get the last inserted id.
        def last_insert_id(conn, opts={})
          stmt = conn.createStatement
          begin
            rs = stmt.executeQuery('SELECT last_insert_rowid()')
            rs.next
            rs.getInt(1)
          ensure
            stmt.close
          end
        end
        
        # Default to a single connection for a memory database.
        def connection_pool_default_options
          o = super
          uri == 'jdbc:sqlite::memory:' ? o.merge(:max_connections=>1) : o
        end
      end
      
      # Dataset class for SQLite datasets accessed via JDBC.
      class Dataset < JDBC::Dataset
        include Sequel::SQLite::DatasetMethods
      end
    end
  end
end

Version data entries

12 entries across 12 versions & 2 rubygems

Version Path
colincasey-sequel-2.10.1 lib/sequel_core/adapters/jdbc/sqlite.rb
colincasey-sequel-2.10.2 lib/sequel_core/adapters/jdbc/sqlite.rb
colincasey-sequel-2.10.4 lib/sequel_core/adapters/jdbc/sqlite.rb
sequel-2.11.0 lib/sequel_core/adapters/jdbc/sqlite.rb
sequel-2.10.0 lib/sequel_core/adapters/jdbc/sqlite.rb
sequel-2.8.0 lib/sequel_core/adapters/jdbc/sqlite.rb
sequel-2.5.0 lib/sequel_core/adapters/jdbc/sqlite.rb
sequel-2.6.0 lib/sequel_core/adapters/jdbc/sqlite.rb
sequel-2.7.1 lib/sequel_core/adapters/jdbc/sqlite.rb
sequel-2.7.0 lib/sequel_core/adapters/jdbc/sqlite.rb
sequel-2.4.0 lib/sequel_core/adapters/jdbc/sqlite.rb
sequel-2.9.0 lib/sequel_core/adapters/jdbc/sqlite.rb