2011-12-21 57 views
1

除了INSERT/UPDATE/SELECT/DELETE MySQL有一些東西叫HANDLER。我讀過,它可以比正常的SELECTs快很多,我在MySQL控制檯中試了一下,看起來很快。HANDLER OPEN/READ/CLOSE的用例是什麼?

但是,我發現的唯一信息是來自參考手冊的單一頁面以及我可以告訴它的內容對除了查看控制檯中的數據以外的任何內容都沒有用處。

那麼,有沒有人在MySQL中使用HANDLERs有任何Real Life [tm]經驗?
我可以在存儲過程中使用它而不是SELECT嗎?
我可以從任何一列如SELECT col INTO variable分配變量嗎?
我可以做連接嗎?我可以做手動從幾個HANDLERs

+0

您使用哪個後端連接到MySQL?哪種語言? – Johan 2011-12-21 11:11:54

+0

C api沒有處理程序的條目,所以似乎沒有關於MySQL CLI的支持:http://dev.mysql.com/doc/refman/5.5/en/c-api-function-overview .html – Johan 2011-12-21 11:15:06

+0

我使用JDBC,但是如果它在函數和程序內部可用,並且這些函數和程序也可以使它在任何地方都可用...... – 2011-12-21 11:20:14

回答

0

我會在這裏爲我自己的答案,直到我找到更好的

我可以用它代替選擇存儲過程裏面呢?

不可以。在嘗試編譯過程時,您會得到ERROR 1314 (0A000) at line 10: HANDLER is not allowed in stored procedures