Module: Sequel::Postgres
- Defined in:
- lib/sequel/adapters/shared/postgres.rb,
lib/sequel/adapters/postgres.rb,
lib/sequel/extensions/pg_row.rb,
lib/sequel/extensions/pg_enum.rb,
lib/sequel/extensions/pg_inet.rb,
lib/sequel/extensions/pg_json.rb,
lib/sequel/extensions/pg_array.rb,
lib/sequel/extensions/pg_range.rb,
lib/sequel/extensions/pg_hstore.rb,
lib/sequel/extensions/pg_row_ops.rb,
lib/sequel/extensions/pg_inet_ops.rb,
lib/sequel/extensions/pg_interval.rb,
lib/sequel/extensions/pg_json_ops.rb,
lib/sequel/extensions/pg_array_ops.rb,
lib/sequel/extensions/pg_range_ops.rb,
lib/sequel/extensions/pg_hstore_ops.rb,
lib/sequel/extensions/pg_loose_count.rb,
lib/sequel/extensions/pg_static_cache_updater.rb,
lib/sequel/extensions/pg_extended_date_support.rb
Overview
Top level module for holding all PostgreSQL-related modules and classes for Sequel. All adapters that connect to PostgreSQL support the following options:
- :client_min_messages
-
Change the minimum level of messages that PostgreSQL will send to the the client. The PostgreSQL default is NOTICE, the Sequel default is WARNING. Set to nil to not change the server default. Overridable on a per instance basis via the :client_min_messages option.
- :force_standard_strings
-
Set to false to not force the use of standard strings. Overridable on a per instance basis via the :force_standard_strings option.
- :search_path
-
Set the schema search_path for this Database's connections. Allows to to set which schemas do not need explicit qualification, and in which order to check the schemas when an unqualified object is referenced.
Defined Under Namespace
Modules: ArrayOpMethods, DatabaseMethods, DatasetMethods, EnumDatabaseMethods, ExtendedDateSupport, HStoreOpMethods, InetDatabaseMethods, InetDatasetMethods, InetOpMethods, IntervalDatabaseMethods, IntervalDatasetMethods, JSONDatabaseMethods, JSONOpMethods, LooseCount, MockAdapterDatabaseMethods, PGRow, RangeOpMethods, StaticCacheUpdater Classes: Adapter, AlterTableGenerator, ArrayOp, CreateTableGenerator, Database, Dataset, ExclusionConstraintViolation, HStore, HStoreOp, InetOp, JSONArray, JSONArrayBase, JSONBArray, JSONBHash, JSONBOp, JSONBaseOp, JSONHash, JSONHashBase, JSONOp, PGArray, PGRange, PGRowOp, RangeOp
Constant Summary collapse
- NAN =
0.0/0.0
- PLUS_INFINITY =
1.0/0.0
- MINUS_INFINITY =
-1.0/0.0
- TYPE_TRANSLATOR =
tt = Class.new do def boolean(s) s == 't' end def integer(s) s.to_i end def float(s) case s when 'NaN' NAN when 'Infinity' PLUS_INFINITY when '-Infinity' MINUS_INFINITY else s.to_f end end def date(s) ::Date.new(*s.split('-').map(&:to_i)) end def bytea(str) str = if str =~ /\A\\x/ # PostgreSQL 9.0+ bytea hex format str[2..-1].gsub(/(..)/){|s| s.to_i(16).chr} else # Historical PostgreSQL bytea escape format str.gsub(/\\(\\|'|[0-3][0-7][0-7])/) {|s| if s.size == 2 then s[1,1] else s[1,3].oct.chr end } end ::Sequel::SQL::Blob.new(str) end end.new.freeze
- CONVERSION_PROCS =
{}
Class Method Summary collapse
- .mock_adapter_setup(db) ⇒ Object
-
.sequel_pg_version_supported?(version) ⇒ Boolean
Whether the given sequel_pg version integer is supported.
Class Method Details
.mock_adapter_setup(db) ⇒ Object
84 85 86 87 88 89 90 |
# File 'lib/sequel/adapters/shared/postgres.rb', line 84 def self.mock_adapter_setup(db) db.instance_exec do @server_version = 90500 initialize_postgres_adapter extend(MockAdapterDatabaseMethods) end end |
.sequel_pg_version_supported?(version) ⇒ Boolean
Whether the given sequel_pg version integer is supported.
31 32 33 |
# File 'lib/sequel/adapters/postgres.rb', line 31 def self.sequel_pg_version_supported?(version) version >= 10617 end |