PGconn.connect ....哪里断开连接?

时间:2017-08-16 14:36:59

标签: ruby-on-rails ruby postgresql connect

环境:

psql(PostgreSQL)9.6.3 Rails 5.1.1 Ruby 2.4.1p111

问题:

我可能有一大群(Devise)用户,每个用户都是一个独立的Postgres用户,例如SomePostgresRole01,SomePostgresRole02等

我可以成功地做到:

conn = PGconn.connect("localhost", 5432,"","","db_development","SomePostgresRole01","SomePassword")

我找不到conn.disconnect方法。这样的功能是否存在?

2 个答案:

答案 0 :(得分:2)

.close()可用于关闭连接。使用ensure确保即使在异常之后它也将关闭数据库连接。

begin
   conn = PGconn.connect("localhost", 5432,"","","db_development","SomePostgresRole01","SomePassword")
rescue PG::Error => e
    puts e.message     
ensure
    conn.close if conn
end

答案 1 :(得分:1)

您可以使用#finish#close,他们只是别名'为了同样的事情。