|
原帖由 eisen-pb 于 2011-8-12 16:17 发表 ![]()
不会吧——怎么我记得cursor哪怕在oracle里面也是能不用就不用的啊?记得以前的说法也是说cursor效率低下阿。难道现在也改变了,使用cursor能提高应用效率?还是提高开发效率?
你说的那个每个语句都要解释又是什么意思?参数文本化?
ORACLE不用游标的语句是隐式游标。
ORACLE强调使用绑定变量,而不使用值。这就意味着使用游标。这样语句,可以软解析。就是不解释语句,直接使用先前相同语句的执行计划。
当你保留游标进行大量重复操作时,完全避免解释语句,效率得到极大提升。
建立和销毁游标开销大,使用游标开销小。因此需要显式打开游标,保留之,尽可能多次使用。
在PL/SQL里的确少见游标,因为静态语句隐式游标。但OCI(相当于CT-LIB)就完全的显式游标操作。
ORA说少用游标是为了你省事。SYBASE是说性能低,二者是不同的。
[ 本帖最后由 yulihua49 于 2011-8-12 16:41 编辑 ] |
|