2017-10-27 6 views
1

私はエリクサーと生のSQLクエリをしようとしています、閉じるpostgresの取引 - エリクサー

Postgresの接続が開き、

が、その後

成功したトランザクションは、クエリのトランザクションがクローズされていない、それがアイドル状態のまま。 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, []) 

、実行を完了した後にトランザクションをクローズする方法

PID  Query status 
2323 qry  Idle 

+0

_Sidenote:_応じて、それほど広くない画面からの質問を読んで、これらのフォーマットのラインを尊重してください。 – mudasobwa

答えて

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) 
+0

関数Postgrex.close/1が定義されていないかプライベート –

+0

私の悪い...回答を更新しました – bschaeffer

+0

結果= Postgrex.query!(conn、query、[])=>引数エラーを投げます _(ArgumentError)引数エラー:erlang .iolist_to_binary(%Postgrex.Query {column ... _ –

関連する問題