gpt4 book ai didi

c++ - QSqlDatabase/QSqlQuery 终止正在运行的查询?

转载 作者:行者123 更新时间:2023-11-28 23:53:31 25 4
gpt4 key购买 nike

我正在使用 QSqlDatabase 并试图找到一种方法来终止正在运行的查询(这是我正在编写的 sql 客户端的一种必要功能)

有没有办法获取正在运行的查询的 ID? (计划只是在另一个连接中执行 kill/pg_cancel_backend 命令——需要支持 PostgreSQL + MySQL)

我考虑过为相同的查询监听进程列表,但如果它被终止的原因是因为它运行了两次而用户只想杀死一个特定的查询怎么办? (这会使该方法不完全准确,而且会 super hacky)

编辑:我与 QSqlDatabase 关系不大(除了它是我正在使用的框架的一部分)所以我不介意使用其他东西,如果它是唯一的方法,但它肯定会很好能够使用它。

我完全没有想法,所以任何东西都会非常感激!

最佳答案

在 Postgres 中,您可以通过执行来识别您的后端进程 id

select pg_backend_pid();

刚建立连接之后。在您关闭连接之前,id 保持不变。

此函数的 MySQL 等效项是 CONNECTION_ID ()

关于c++ - QSqlDatabase/QSqlQuery 终止正在运行的查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32170131/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com