Sha256: 23d70025015fee85b04777acb962be857466cd98c022aa722fb472575c32462d

Contents?: true

Size: 1.06 KB

Versions: 4

Compression:

Stored size: 1.06 KB

Contents

module ODBCAdapter
  module Adapters
    # A default adapter used for databases that are no explicitly listed in the
    # registry. This allows for minimal support for DBMSs for which we don't
    # have an explicit adapter.
    class NullODBCAdapter < ActiveRecord::ConnectionAdapters::ODBCAdapter
      class BindSubstitution < Arel::Visitors::ToSql
        include Arel::Visitors::BindVisitor
      end

      # Using a BindVisitor so that the SQL string gets substituted before it is
      # sent to the DBMS (to attempt to get as much coverage as possible for
      # DBMSs we don't support).
      def arel_visitor
        BindSubstitution.new(self)
      end

      # Explicitly turning off prepared_statements in the null adapter because
      # there isn't really a standard on which substitution character to use.
      def prepared_statements
        false
      end

      # Turning off support for migrations because there is no information to
      # go off of for what syntax the DBMS will expect.
      def supports_migrations?
        false
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
odbc_adapter-5.0.5 lib/odbc_adapter/adapters/null_odbc_adapter.rb
odbc_adapter-5.0.3 lib/odbc_adapter/adapters/null_odbc_adapter.rb
odbc_adapter-5.0.2 lib/odbc_adapter/adapters/null_odbc_adapter.rb
odbc_adapter-5.0.1 lib/odbc_adapter/adapters/null_odbc_adapter.rb