|
> 数据从服务器返回到客户端不可能是一个数据包发过去的,肯定分了很多批。
Only if the number of rows exceeds array size (called by other name in apps other than sqlplus) set by the client, or exceeds other limits set by SQL*Net. Lower network layer of course also sets packet size.
> 我理解游标的结构可能包含: 指向数据字典相关信息的指针,指向执行计划的指针。每个session 访问这个游标的时候 应该还有 当前执行到什么位置的信息。
A parsed cursor has no pointer pointing to the data dictionary. But there're pointers pointing to addresses in the shared pool.
Actually, we may be talking about two different meanings of cursor. Here I'm talking about the cursor in the library cache of the shared pool. You may be talking about that as in PL/SQL code, "declare cursor ...", or the cursor in dbms_sql. I think the properties are shown by some functions in that package, such as last_row_id, last_row_count, etc.
Yong Huang |
|