2011-02-28 65 views

回答

4

在數據庫中,查詢將繼續運行直至完成。可以終止運行查詢的會話,但是在數據庫之外提供該能力存在安全問題。

2

一般來說,沒有什麼可以檢測它或中止正在進行的查詢。由於無法從Java中斷正在進行的查詢,因此不得不花費CPU時間來完成該過程。

爲什麼這會成爲問題?你試圖避免什麼?

2

在JPA中,您可以定義傳遞給JDBC的超時。您還可以設置maxResults以限制返回的行數。

JDBC現在還提供了一個cancel()API,但是JPA還沒有公開這個。

+0

FWIW JDO還提供了一個cancel()API,並且還允許手動關閉查詢(及其結果)。 – DataNucleus 2011-03-01 18:49:48

相關問題