如何断开Postgrex连接?

谢esse

我试图弄清楚如何连接到postgres数据库,运行查询,然后断开连接。

Postgrex,我使用建立连接

{:ok, pid} = Postgrex.start_link(hostname: "localhost", username: "postgres", password: "postgres", database: "postgres")

然后我使用执行查询

Postgrex.query!(pid, "SELECT user_id, text FROM comments", [])

但是,如何断开连接呢?

我想断开连接,因为我正在遍历N个数据库并在所有数据库上运行相同的查询。

我尝试退出了Process,例如Process.exit(pid, :bye),但它以开头,因此杀死了生成过程start_link/3start/3在中找不到函数Postgrex

多伯特

由于pid返回的Postgrex.start_linkGenServer,因此您可以使用GenServer.stop/1

iex(1)> {:ok, pid} = Postgrex.start_link(hostname: "localhost", username: "postgres", password: "postgres", database: "postgres")
{:ok, #PID<0.277.0>}
iex(2)> GenServer.stop(pid)                                                                                                 
:ok
iex(3)> GenServer.stop(pid)
** (exit) no process: the process is not alive or there's no process currently associated with the given name, possibly because its application isn't started
    (stdlib) proc_lib.erl:797: :proc_lib.stop/3

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章