绑定变量的意义:
在oracle 中,对于一个提交的sql语句,存在两种可选的解析过程, 一种叫做硬解析,一种叫做软解析.硬解析需要经解析,制定执行路径,优化访问计划等许多的步骤.硬解释不仅仅耗费大量的cpu,更重要的是会占据重要的们闩(latch)资源,严重的影响系统的规模的扩大(即限制了系统的并发行),而且引起的问题不能通过增加内存条和cpu的数量来解决。而软解析只做软分析即可,效率上有很大的提高。
怎么能使用软解析,重复利用执行计划呢?答案是使用绑定变量。那如何使用绑定变量呢?下文做出说明;
1.在sqlplus中使用绑定变量,使用variable命名变量,使用exec设定变量值,使用:变量名引用变量,例:
SQL> variable i number; SQL> exec :i := 100; PL/SQL procedure successfully completed i --------- 100 SQL> select employee_id,first_name,last_name from employees where employee_id=:i; EMPLOYEE_ID FIRST_NAME LAST_NAME ----------- -------------------- ------------------------- 100 Steven King i --------- 100
2.在存储过程中使用绑定变量
在pl/sql中,会直接把参数解析成为绑定变量,不需要做任何处理。这是oracle为了优化做出的努力,值的肯定。在java开发中,不要使用Statement,而使用PrepareStatement。
3.动态sql中使用绑定变量
declare v_string varchar2(100); v_employee_id number(20); v_first_name varchar2(20):='Lex'; begin v_string := 'select employee_id from employees where first_name=:name'; execute immediate v_string into v_employee_id using v_first_name; dbms_output.put_line(v_employee_id); end; 102
4.$与&& 替换便狼
在pl/sql中执行程序时,要求用户输入变量名称,替换程序中的&变量名。
&&对于相同变量名的只要求用户输入一次即可。
分享到:
相关推荐
在Java中实现Oracle变量的绑定方法 .doc 在Java中实现Oracle变量的绑定方法 .doc
Java中Oracle操作绑定变量使用用户工具模块解决方案
oracle 数据库的绑定变量特性及应用
绑定变量的目的和命名用方法
Oracle绑定变量窥视功能深度分析.pdf
也谈oracle 数据库的绑定变量特性及应用,很好的资料!
绑定变量 变量绑定是OLTP系统中一个非常值得关注的技术。良好的变量绑定会使OLTP系统数据库中的SQL 执行速度飞快,内存效率极高;不使用绑定变量可能会使OLTP 数据库不堪重负,资源被SQL解析严重耗尽,系统运行...
结合实例说明Oracle数据库绑定变量特性及应用。合理的使用绑定变量,可以大大提高SQL性能
Oracle数据库的绑定变量特性及应用.pdfOracle数据库的绑定变量特性及应用.pdfOracle数据库的绑定变量特性及应用.pdfOracle数据库的绑定变量特性及应用.pdfOracle数据库的绑定变量特性及应用.pdfOracle数据库的绑定...
Oracle 中关于变量绑定的解释说明,还是蛮清楚的学习资料。
查找未使用绑定变量sql.sql
oracle变量绑定[文].pdf
Oracle_数据库的绑定变量特性及应用终稿.pdf
在PHP中利用绑定变量提高Oracle的存储效率.pdf
捕获绑定变量when 180 then --TIMESTAMP可以获取绑定变量,前提是还没被清出sga.
利用替换变量提高Oracle数据库系统的交互性
Oracle 12c-优化 Hint详解.pdf Oracle 12c-优化 Oracle 索引技术.pdf Oracle 12c 执行计划.pdf ...Oracle 12c 使用绑定变量 VS 不使用绑定变量.pdf Oracle 12c 自动工作负载信息库AWR.pdf Oracle 12c 常用SQL.pdf
教程名称:Oracle培训视频(杨老师录制)课程目录:【】视频10:oracle备份恢复一【】视频11:oracle备份恢复二【】视频12:共享池结构1【】视频13:共享池之sql重用【】视频14:共享池之绑定变量【】视频15:共享池...
Oracle Ebs官方工具Tidy 代替tkprof,Oracle Trace 跟踪文件格式化工具,可观测语句绑定变量的值。