博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
05 语句处理
阅读量:6849 次
发布时间:2019-06-26

本文共 676 字,大约阅读时间需要 2 分钟。

语句怎样执行

分析: 对提交的语句进行语法和语义检查

优化: 生成一个可在数据库中用来执行语句的最佳计划

行资源生成: 为会话取得最佳字画和建立执行计划(要执行的一棵树)

语句执行: 完成实际执行查询的行资源生成步骤的输出.

应该考虑废除 RBO 这种优化技术,  而完全使用基于成本的优化技术(CBO)

这里在说一下执行, 就是statspack 中tom 大师很注重那个执行, 实际上, 可以跳过分析, 优化和行资源生成步骤, 反复执行语句, 因为这是目前为止最高效的方法. 只要有可能, 我们都希望建立符合 “分析一次, 执行多次”规则的应用程序, 它极大的减少了CPU的处理量以及系统执行的栓锁数量.

比如: 我们有一个 PL/SQL, 然后在 for 循环中执行 insert 语句 1000 次, 那么利用 tkprof 得到的应该是类似以下的视图:

语句执行流程图

java 中使用绑定变量

String v_id = ‘xxx’;

String v_sql = ‘select name from table where id = ?’;   // 嵌入绑定变量

PrepareStatement stmt = con.prepareStatement(v_sql);

stmt.setString(1, v_id);   // 为绑定变量赋值

stmt.executeQuery()';

 

 

尽可能少做分析

这里的分析, 可以理解为执行一条SQL语句之前的解析, 可以通过 PL/SQL 那种打开一个游标, 然后执行多次语句的方法来减少分析的次数.

转载地址:http://qarul.baihongyu.com/

你可能感兴趣的文章
Python中的else
查看>>
zend_db连接mysql(附完整代码)(转)
查看>>
五个人二个月为什么不等于十个人一个月
查看>>
matlab 与 VC 混编函数参数传递<2>
查看>>
Silverlight for Windows Phone开发系列课程
查看>>
Ajax经典交互讲解
查看>>
如何让windows更高效?
查看>>
windows 搭建 subversion+TortoiseSVN
查看>>
windows8安装xna4.0不能开发Xbox和PC端游戏的解决办法
查看>>
jQuery.validate errorPlacement
查看>>
转载:linux vi命令详解
查看>>
EM算法原理
查看>>
System.Drawing.Color的颜色对照表
查看>>
一次滚动一屏的滚动条行为实现
查看>>
.NET面试题(三)
查看>>
自定义TreeList单元格 z
查看>>
【百度地图】- 学习.1
查看>>
JS函数重载解决方案
查看>>
Nginx中的rewrite指令
查看>>
CSS系列:CSS3新增选择器
查看>>