SQLCancel不能与UDB一起使用? [英] SQLCancel not working with UDB?

查看:93
本文介绍了SQLCancel不能与UDB一起使用?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我们设置了一个v7客户端访问运行在
AIX上的v8 UDB服务器。当我在长时间运行的查询中从第二个线程调用SQLCancel时,

SQLCancel本身也只是等待语句完成。那不是想法,不是吗?有谁知道如何解决这一问题?或者不支持

(尽管在DB2帮助中有描述)?


问候

Peter Arrenbrecht

Opus Software AG

We have a setup with a v7 client accessing a v8 UDB server running on
AIX. When I call SQLCancel from a second thread on a long running query,
SQLCancel itself simply waits for statement completion too. That was not
the idea, no? Does anyone know how to fix this? Or is it not supported
(despite being described in the DB2 help)?

Regards
Peter Arrenbrecht
Opus Software AG

推荐答案

Peter Arrenbrecht写道:
Peter Arrenbrecht wrote:
我们有一个设置v7客户端访问在AIX上运行的v8 UDB服务器。当我在长时间运行的查询中从第二个线程调用SQLCancel时,
SQLCancel本身也只是等待语句完成。那不是想法,不是吗?有谁知道如何解决这一问题?或者它是否不受支持
(尽管在DB2帮助中有描述)?
We have a setup with a v7 client accessing a v8 UDB server running on
AIX. When I call SQLCancel from a second thread on a long running query,
SQLCancel itself simply waits for statement completion too. That was not
the idea, no? Does anyone know how to fix this? Or is it not supported
(despite being described in the DB2 help)?




您在服务器上执行的长期查询是什么?


-

Knut Stolze

信息集成

IBM德国/耶拿大学


它正在做类似


SELECT COUNT(*)

来自HugeTable A,HugeTable B


显然是设计好运行了一段时间所以我可以测试SQLCancel
。它不能用于


SELECT *

来自BigTable

WHERE SomeField LIKE''%m%''<但是,或者是b $ b。在获取阶段它可以正常工作,但这不是我需要它的地方。它应该中止初始执行

SQLExec / SQLPutData。

Knut Stolze写道:
It''s doing something like

SELECT COUNT(*)
FROM HugeTable A, HugeTable B

which is, obviously, designed to be running for quite a while so I can
test SQLCancel. It does not work with something like

SELECT *
FROM BigTable
WHERE SomeField LIKE ''%m%''

either, though. During the fetch phase it works OK, but that is not
where I need it. It should abort the execution of the initial
SQLExec/SQLPutData.
Knut Stolze wrote:
Peter Arrenbrecht写道:

Peter Arrenbrecht wrote:

我们设置了一个v7客户端访问在AIX上运行的v8 UDB服务器。当我在长时间运行的查询中从第二个线程调用SQLCancel时,
SQLCancel本身也只是等待语句完成。那不是想法,不是吗?有谁知道如何解决这一问题?或者它是否不受支持
(尽管在DB2帮助中有描述)?
We have a setup with a v7 client accessing a v8 UDB server running on
AIX. When I call SQLCancel from a second thread on a long running query,
SQLCancel itself simply waits for statement completion too. That was not
the idea, no? Does anyone know how to fix this? Or is it not supported
(despite being described in the DB2 help)?



您在服务器上执行的长期查询是什么?


What''s your long-running query doing on the server?



Peter Arrenbrecht写道:
Peter Arrenbrecht wrote:
它正在做类似的事情

SELECT COUNT(*)
来自HugeTable A,HugeTable B

这显然是为了运行一段时间而设计的,所以我可以测试SQLCancel。它不适用于类似

SELECT *
FROM BigTable
但是,某些地方也喜欢''%m%''

。在获取阶段它可以正常工作,但这不是我需要它的地方。它应该中止初始的SQLExec / SQLPutData的执行。
It''s doing something like

SELECT COUNT(*)
FROM HugeTable A, HugeTable B

which is, obviously, designed to be running for quite a while so I can
test SQLCancel. It does not work with something like

SELECT *
FROM BigTable
WHERE SomeField LIKE ''%m%''

either, though. During the fetch phase it works OK, but that is not
where I need it. It should abort the execution of the initial
SQLExec/SQLPutData.



我读CLI命令的方式是SQLCancel不保证

语句执行确实终止,因为它说:

函数如何取消取决于操作系统。然后在如果

原始功能被取消,......


-

Knut Stolze < br $>
信息集成

IBM德国/耶拿大学



The way I read the CLI Reference is that SQLCancel does not guarantee that
the statement execution is indeed terminated because it says: "How the
function is canceled depends upon the operating system." and later on "If
the original function is canceled, ..."

--
Knut Stolze
Information Integration
IBM Germany / University of Jena


这篇关于SQLCancel不能与UDB一起使用?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆