oracle查询不在ascii中的数据 PL控制的主要优点?
PL控制的主要优点?
PL/SQL是一种高性能的基于事务的语言,可以运行在任何ORACLE环境中,支持所有的数据处理命令。SQL的数据定义和数据控制元素通过使用PL/SQL程序单元来处理。
。PL/SQL支持所有SQL数据类型和所有SQL函数,还支持所有ORACLE对象类型。
的。PL/SQL块可以命名并存储在ORACLE服务器中,也可以由其他PL/SQL程序或SQL命令调用。任何客户机/服务器工具都可以访问PL/SQL程序,具有良好的可重用性。
您可以使用ORACLE数据工具来管理存储在服务器中的PL/SQL程序的安全性。您可以授权或撤销数据库的其他用户访问PL/SQL程序的能力。
的。PL/SQL代码可以使用任何ASCII文本编辑器编写,因此对于ORACL
oracle解析规则?
SQL的处理过程描述如下:
1.检查是否有打开的光标。如果有,直接通过光标链接到位于PGA中的私有SQL区(private SQL AREA),转到步骤11。否则,执行步骤2。
2.检查是否设置了初始化参数SESSION_CACHED_CURSORS。如果设置了,还可以通过光标指向位于PGA中的私有SQL区域,转到步骤11。否则,转到步骤3。
3.检查保持光标和释放光标的设置。如果RELEASE_CURSORno(缺省no)和HOLD_CURSORyes(缺省no),当ORACLE执行完SQL语句后,为私有SQL区分配的内存空间被保留,游标和私有SQL区之间的链接也被保留,预编译器将不再使用它。同样,可以通过这个指针直接在private SQL区域获取语句,并转到步骤11。
以上三种情况,实际上没有parse,语句直接从位于PGA的私有SQL区域获取,直接执行。这是快速解析。
当这三个条件都不存在时,oracle执行第4步。
4.创建一个光标。
5.语法检查:检查语法书写是否正确,是否符合SQL参考手册中给出的SQL语法。
6.语义分析:查阅数据字典,检查表和列是否正确,是否符合要求对象,以便在解析语句的过程中不会更改这些对象的定义,并验证是否满足访问所涉及的架构对象所需的权限。
7.将语句转换成ASCII等价的数字代码,然后通过哈希算法得到哈希值。
8.检查库缓存中是否存在具有相同哈希值的语句。如果是,请转到步骤11。否则,转到步骤9。这是软解析。
9.选择执行计划。从可用的执行计划中选择一个最佳执行计划,包括与存储的大纲或实体化视图相关的决策。
10.生成语句的编译代码(p代码)。
11.执行语句。
当一个会话执行一个语句时,该语句的解析结果将被保存在库缓存中,并且在PGA 的私有sql区域。游标总是通过一个链接直接链接到私有sql区域。如果在private中没有找到这个副本,您需要解析SQL,然后匹配库缓存中的哈希值。所以一般来说,您可以使用cursor而不进行任何解析,因为您直接从当前的私有sql区域获得了与语句相关的信息,包括执行计划。一旦需要在库缓存中进行匹配,就必须进行解析。
Softpparse不是没有解析,但是解析的量很小,只需要语法检查、语义分析和hash语句解析。
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。