关闭postgres交易 - Elixir

时间:2017-10-27 06:06:27

标签: elixir phoenix-framework elixir-framework

我正在尝试使用Elixir进行原始sql查询,

Postgres连接打开,交易成功

但在此之后,查询事务未关闭,它仍处于空闲状态。

qry = "select id from table where id = 1"
{:ok, pid} =  Postgrex.start_link(
                hostname: "localhost",
                username: "user",
                password: "password",
                database: "db",
                pool_size: 100)

Postgrex.query!(pid, qry, [])

在Postgres,

PID     Query  status
2323    qry     Idle

如何在完成执行后关闭事务。

1 个答案:

答案 0 :(得分:0)

因此,Postgrex.query!/4运行扩展查询。您可以使用Postgrex.close!/3关闭扩展查询,但看起来只是这样:

{:ok, conn} = Postgrex.start_link([])
query = Postgrex.prepare!(conn, :query_name, "SELECT * ....")
result = Postgrex.query!(conn, query, [])
Postgrex.close!(conn, query)