Class PGconn
In: lib/sequel/adapters/postgres.rb
Parent: Object

Attempt to get uniform behavior for the PGconn object no matter if pg, postgres, or postgres-pr is used.

Methods

Constants

CONNECTION_OK = -1

External Aliases

decode_bytea -> unescape_bytea
close -> finish
exec -> async_exec

Public Class methods

If no valid bytea unescaping method can be found, create one that raises an error

[Source]

    # File lib/sequel/adapters/postgres.rb, line 57
57:             def self.unescape_bytea(obj)
58:               raise Sequel::Error, "bytea unescaping not supported with this postgres driver.  Try using ruby-pg, ruby-postgres, or postgres-pr."
59:             end

Public Instance methods

[Source]

    # File lib/sequel/adapters/postgres.rb, line 66
66:         def block(timeout=nil)
67:         end

If there is no escape_bytea instance method, but there is an escape_bytea class method, use that instead.

[Source]

    # File lib/sequel/adapters/postgres.rb, line 35
35:           def escape_bytea(obj)
36:             self.class.escape_bytea(obj)
37:           end

If no valid bytea escaping method can be found, create one that raises an error

[Source]

    # File lib/sequel/adapters/postgres.rb, line 52
52:             def escape_bytea(obj)
53:               raise Sequel::Error, "bytea escaping not supported with this postgres driver.  Try using ruby-pg, ruby-postgres, or postgres-pr."
54:             end

If we are using postgres-pr, use the encode_bytea method from that.

[Source]

    # File lib/sequel/adapters/postgres.rb, line 45
45:             def escape_bytea(obj)
46:               self.class.encode_bytea(obj)
47:             end

If there is no escape_string instance method, but there is an escape class method, use that instead.

[Source]

    # File lib/sequel/adapters/postgres.rb, line 17
17:           def escape_string(str)
18:             Sequel::Postgres.force_standard_strings ? str.gsub("'", "''") : self.class.escape(str)
19:           end

Raise an error if no valid string escaping method can be found.

[Source]

    # File lib/sequel/adapters/postgres.rb, line 22
22:           def escape_string(obj)
23:             if Sequel::Postgres.force_standard_strings
24:               str.gsub("'", "''")
25:             else
26:               raise Sequel::Error, "string escaping not supported with this postgres driver.  Try using ruby-pg, ruby-postgres, or postgres-pr."
27:             end
28:           end

[Source]

    # File lib/sequel/adapters/postgres.rb, line 73
73:         def status
74:           CONNECTION_OK
75:         end

[Validate]