for HZAU COI students
嵌入式SQL
1.SQL通信区:exec SQL include SQLCA
2.主变量:SQL语句中使用的主程序变量。输入主变量由程序赋值,SQL使用,输出主变量由SQL赋值,返回应用程序。
3.游标:游标是系统为数据库开设的一个数据缓冲区,存放SQL的结果。
使用游标:
1.说明游标:declare 名字 cursor for select句子
2.打开游标:open 名字
3.推进游标并取记录:fetch 名字 into 主变量 指示变量,……
4.关闭游标:close 名字
过程化SQL
1.存储过程:由过程化SQL书写的过程。(p256 例8.9)
优点:
1.运行效率高
2.降低客户端与服务端的通信量。
3.方便实施企业规划。
总结:
嵌入式SQL把SQL语句嵌入到某种高级语言中,SQL语句用来存储数据库中的数据,主语言用来控制程序的流程以及对取出的数据做进一步处理,利用高级语言的强大计算能力来实现复杂的应用需求。SQL与主语言的具有不同的数据处理方式。SQL是面向集合的,而主语言是面向记录的。所以嵌入式SQL使用游标来协调这种不同的处理方式。
查询优化:分为代数优化(逻辑优化)和物理优化(非代数优化)。代数优化是指关系代数表达式的优化,物理优化则是指通过存取路径和底层操作算法的选择进行优化。
查询处理步骤:查询分析,查询检查,查询优化,查询执行。
选择操作的实现:
1.全表扫描
2.索引扫描
链接操作的实现:
1.嵌套循环。
2.排序-合并算法。
3.索引连接算法。
4.hash join算法。
代数优化策略是通过对关系代数表达式进行等价变换来提高效率。
物理优化方法:
1.基于规则的启发式优化。
2.基于代价估算的优化。
3.两者结合的优化。
for HZAU COI students
written by uitstalie on 15:11,03.01.2022