Sha256: 0964b39654f593e3936dbd5c100cf61a66cb466fd5232ecc5af4fd5cccb1e41b

Contents?: true

Size: 1.02 KB

Versions: 7

Compression:

Stored size: 1.02 KB

Contents

module Sequel
  module Informix
    module DatabaseMethods
      TEMPORARY = 'TEMP '.freeze

      # Informix uses the :informix database type
      def database_type
        :informix
      end

      private

      # Informix has issues with quoted identifiers, so
      # turn off database quoting by default.
      def quote_identifiers_default
        false
      end

      # SQL fragment for showing a table is temporary
      def temporary_table_sql
        TEMPORARY
      end
    end
    
    module DatasetMethods
      SELECT_CLAUSE_METHODS = Dataset.clause_methods(:select, %w'limit distinct columns from join where having group compounds order')

      private

      # Informix does not support INTERSECT or EXCEPT
      def supports_intersect_except?
        false
      end

      def select_clause_methods
        SELECT_CLAUSE_METHODS
      end

      def select_limit_sql(sql)
        sql << " SKIP #{@opts[:offset]}" if @opts[:offset]
        sql << " FIRST #{@opts[:limit]}" if @opts[:limit]
      end
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
sequel-3.29.0 lib/sequel/adapters/shared/informix.rb
sequel-3.28.0 lib/sequel/adapters/shared/informix.rb
sequel-3.27.0 lib/sequel/adapters/shared/informix.rb
sequel-3.26.0 lib/sequel/adapters/shared/informix.rb
sequel-3.25.0 lib/sequel/adapters/shared/informix.rb
sequel-3.24.1 lib/sequel/adapters/shared/informix.rb
sequel-3.24.0 lib/sequel/adapters/shared/informix.rb