




已阅读5页,还剩67页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Oracle数据库10g中新的SQL和PL SQL功能 议程 新的SQL特性新的PL SQL特性PL SQL的速度是原来的两倍总结问答 Oracle8 OracleSQL引擎的发展 Oracle8i Oracle9i Oracle9iR2 SQL XML集成 XMLType URIType等 OLAPDatetime类型ANSI联接CASE表达式 XML数据库SQL XMLW3C标准数据挖掘 网络Web服务正则表达式本地数值结构BLAST 对象扩展数据插件 SQL Java集成interMedia类型 数据和处理复杂性 新的SQL特性 正则表达式本地数值结构LOB增强集合增强 正则表达式简介 起源于数学首先在UNIX中计算机化从ed grep perl cgi web到任何地方多种应用程序HTMLFORMS中的验证生物信息学服务器配置数据挖掘 Oracle正则表达式 对数据库的本地支持SQL和PL SQL中的接口基于POSIX标准与GNU PERL Java Xquery等同步描述数据的模式变为数据的一个属性数据库内部强大的字符串处理 主要特性 POSIX扩展的正则表达式接口REGEXP LIKE模式是否匹配 REGEXP SUBSTR它与什么匹配 REGEXP INSTR它在哪里匹配 REGEXP REPLACE替换匹配的记录 匹配选项语言环境支持LOB支持 REGEXP LIKE 确定模式是否存在 查找名称 JonStevens 的变体John或JonSteven或Stevens或Stephen或StephensSELECTc1FROMt1WHEREREGEXP LIKE c1 Joh nSte ph v ens JonStevens JohnStephens JohnStevens 和DDL一起使用 允许使用过滤器的数据 并带检查约束邮政编码 ZIPcode 列是VARCHAR2 5 但可以包含任意的5个字符 使用视图的查询子集和格式化将电话号码格式化为 xxx xxx xxxx创建基于函数的索引 与PL SQL一起使用 非常强大的字符串处理功能src REGEXP REPLACE src src REGEXP REPLACE src src REGEXP REPLACE src 可以增强现有的功能支持PERL缩写提取第n个子表达式替换大量代码行可以简化字符串处理函数 性能考虑事项 模式匹配可能很复杂需要编译成状态机词法分析检查所有可能的分支 直到发现匹配每条语句编译一次对于复杂情景可能比LIKE更快邮政编码检查快5倍通常比等价的PL SQL更快编写快速执行的表达式 本地浮点数据类型 两种新的数值数据类型BINARY FLOAT BINARY DOUBLE二进制浮点运算的IEEE754标准是许多其他标准 例如 Java XML模式 和硬件平台的一部分普遍存在于商务智能 生命科学 工程 科学计算 本地浮点数据类型与数值数据类型 比NUMBER类型效率更高硬件运算 数学运算快5 10倍占用更少的内存 磁盘空间 5 9字节与1 22字节 BINARY DOUBLE值范围更大 e308与e125 无需类型转换 使用与字节顺序无关的存储格式 本地浮点函数 新的类型转换函数TO BINARY FLOAT TO BINARY DOUBLETO NUMBERSQL函数支持数值函数 sin cos等 聚合函数 sum avg stddev等 分析函数 sum avg stddev等 对SQL PL SQL Java XML模式注册 ODP NET和OCI OCCI的无缝支持 本地浮点约束 createtablefloating point table1 fltNnullbinary floatconstraintflt nullnotnull dblNnullbinary doubleconstraintdbl nullnotnull fltUnqbinary floatconstraintflt unqunique dblUnqbinary doubleconstraintdbl unqunique fltChkbinary floatconstraintflt chkcheck fltChkisnotNaN dblChkbinary doubleconstraintdbl chkcheck dblChkisnotinfinite fltPrmbinary floatconstraintflt prmprimarykey NaN 不是数字 e g 0 0 infinity infinity 本地浮点约束 createtablefloating point table2 dblPrmbinary doubleconstraintdbl prmprimarykey fltFrnbinary floatconstraintflt frnreferencesfloating point table1 fltPrm ondeletecascade PL SQL示例 使用欧拉级数计算 sqrt 6 1 1 2 2 1 3 2 使用牛顿方法近似真值的平方根赋值 加 乘 除 比较 绝对值 procedureEuler Pi Seriesis beginpi one prev pi zero prod over six zero step zero whilepi prev pi tolerloopprev pi pi step step one prod over six prod over six one step step prod six prod over six prev root prod root prod two whileAbs root prev root root tolerloopprev root root root root prod root two endloop pi root endloop endEuler Pi Series subtypeMy Numberisnumber zeroconstantMy Number 0 0 oneconstantMy Number 1 0 twoconstantMy Number 2 0 sixconstantMy Number 6 0 tolerconstantMy Number 0 00000000001 root tolerconstantMy Number toler 1000 0 rootMy Number prev rootMy Number prod over sixMy Number prodMy Number piMy Number prev piMy Number stepMy Number subtypeMy Numberisbinary double zeroconstantMy Number 0 0d oneconstantMy Number 1 0d twoconstantMy Number 2 0d sixconstantMy Number 6 0d tolerconstantMy Number 0 00000000001d root tolerconstantMy Number toler 1000 0d rootMy Number prev rootMy Number prod over sixMy Number prodMy Number piMy Number prev piMy Number stepMy Number PL SQL示例 使用欧拉级数计算 近似300 000次迭代NUMBER花费约27 7秒BINARY DOUBLE花费约3 7秒提高倍数 约7倍 LOB增强 LOB普遍用于存储非结构化的数据 文本 AVI 基因 蛋白序列等 LOB性能改善 访问内联 4KB LOB时获得5倍的性能增益 在9iR2中 临时LOB使用引用计算提供了几个数量级的性能增益在读取时引用 ReferenceonRead 在写入时复制 CopyonWrite 超大型LOB TB大小的Lob 8 128TB DB BLOCK SIZE 2 32KB x 4GB 1 新的DBMS LOB GET STORAGE LIMIT函数OCI JDBC和DBMS LOB现在支持大于4GB的LOBOCILobRead2 OCIWriteAppend2 和OCILobWrite2 函数为JDBC和DBMS LOB提供相同的API 集合类型增强 用户定义的类型 集合类型和引用类型简化了结构复杂的数据建模集合类型用于映射实际世界应用程序中的包含关系例如 一个购物车包含了许多商品 VARRAY增强 VARRAY的类型发展CREATETYPEemail list typASOBJECT section noNUMBER emailsemail list arr CREATETYPEemail varray typASVARRAY 5 OFemail list typ ALTERTYPEemail varray typMODIFYLIMIT100CASCADE 在临时表中支持VARRAY列提供应用程序开发灵活性 嵌套表增强 将一个不同的表空间用于嵌套表的存储表带嵌套表的列的表可以在表空间之间分配I O负载CREATETABLEpurchase orders order items columnorder items typ NESTEDTABLEorder items columnSTOREASorder items column nt TABLESPACEusers 为嵌套表提供的ANSISQL多集合操作 嵌套表存储无序的元素集合只包含唯一的元素多集合可以包含重复的元素嵌套表上的各种多集合操作 为嵌套表提供的多集合操作 Cardinality Collect MultisetExcept MultisetIntersection MultisetUnion Powermultiset Powermultiset by Cardinality和Set操作查找热销商品集合的强大工具 市场指数总览分析 多集合操作示例 createtypecategoriesastableofint createtablecarts c1int c2categories nestedtablec2storeastb1 c2 insertintocartsvalues 1 categories 1 2 3 4 insertintocartsvalues 2 categories 2 4 6 selectt1 c2multisetintersectt2 c2fromcartst1 cartst2wheret1 c1 1andt2 c1 2 categories 2 4 frequentset 嵌套表比较 Equal和NotEqual In Submultiset MemberOf Empty和Is Not ASetSELECT FROMcustomercWHEREitem typ 2 MEMBEROFc freq set 在PL SQL中也提供 declaretypeTab tistableofpls integer aTab t Tab t 1 2 3 4 5 beginif3memberofathenShow member endif end SQL小结 Oracle数据库10gSQL引擎聚合来自不同的分布式数据源的数据网格信息无缝地集成Java XML和基本数据处理功能一个全面的高性能和基于标准 SQL 2003W3C J2SE POSIX等 的特性集简化的应用程序开发 部署和管理RAS 可管理性和安全性 议程 新的SQL特性新的PL SQL特性PL SQL的速度是原来的两倍总结问答 新的PL SQL特性 刚才讨论的所有SQL语言特性FORALL语句中的稀疏绑定数组编译器警告新的Utl Mail和Utl Compress程序包 FORALL语句中的稀疏绑定数组 您的PL SQL表最初是密集的 例如 是由BULKCOLLECT填充的您删除了一些元素您想将这些元素插入到某个表中 foralljinINDICESOFsparse emp recordsBETWEENAND optionalinsertintonew employeesvaluessparse emp records j FORALL语句中的稀疏绑定数组 您有一个PL SQL表 密集或稀疏 您想将这些记录的一个指定的子集插入到某个表中 foralljinVALUESOFpointer tabinsertintonew employeesvaluesemp records j 编译器警告 createorreplaceprocedurePisdebuggingboolean false beginifdebuggingthenDbms Output Put Line debugging endif endP SP2 0804 Procedurecreatedwithcompilationwarnings ShowErrorsPLW 06002 Unreachablecode altersessionsetplsql warnings ENABLE ALL 编译器警告 createorreplaceprocedureP iinoutclob isbegini x endP SP2 0804 Procedurecreatedwithcompilationwarnings ShowErrorsPLW 07203 parameter I maybenefitfromuseoftheNOCOPYcompilerhint altersessionsetplsql warnings ENABLE PERFORMANCE 新提供的程序包 Utl Mail它的API反映了 比如说 NetscapeCommunicator的最终用户的思维模式无需SMTP协议的知识 与使用Utl Smtp相比 确保简单化的一些限制Utl Compress提供了一个API来压缩和解压缩RAW或BLOB 服务器端 议程 新的SQL特性新的PL SQL特性PL SQL的速度是原来的两倍总结问答 PL SQL编译和执行101 全新的后端 10g引进了一个全新的后端 又叫做优化代码生成器它全面地查看源代码所表达的内容 然后删除对最终的正确结果确实没有影响的所有计算提供了实现巨大性能的潜力 全新的后端 在9iR2中的ORACLE可执行文件中 新的代码生成器与旧的代码生成器并存 一个允许在两者之间进行选择的开关两者都曾在回归测试中使用因此我们保证它是安全的 我们没有将这个开关提供给客户 重要的pvm升级 删除了过时的指令增加了新的指令例如one shotmulticoncatenate简化了用于使用PVM指令的系统实施经过调整的指令的C例程 改进了本地编译 数据库中的DLL对于数据库管理员 配置更加简单改进了生成的C代码让我们修改其工作方式 PL SQL编译和执行101 性能实验结果 由PL SQL小组进行的测试Beta程序测试由Oracle的应用程序部进行的测试 由PL SQL小组进行的测试 17个自包含的PL SQL程序的基准测试套件设计用来实践大范围的结构和编程习惯一些测试选择用来演示特定的优化器效果例如 从一个循环中删除一个常量赋值 由PL SQL小组进行的测试 下一张幻灯片显示了每一个程序在9iR2INTERPRETED和10gNATIVE中的速度9iR2中速度相同10g中显示了两种测量方式的完成CPU时间之比 由PL SQL小组进行的测试 大多数测试程序速度提高超过2倍一些测试程序速度提高远超过2倍速度提高10倍的程序使用BINARY INTEGER 并拥有特别易于优化的编程习惯 procedurePis constrainedbinary integersubtypes apositiven 1 bpositiven 1 cpositiven 1 dpositiven 1 beginforjin1 i nof iterationsloopb j constraintcheck d 42 constantassignmentwithinaloop c d b canbecombined a b c otusedexcepthere endloop endP 由PL SQL小组进行的测试 下一张幻灯片显示了更多详细信息基准是OracleVersion8 0 6显示了8i9iR2INTERPRETED9iR2NATIVE10gINTERPRETED10gNATIVE速度提高的倍数 由PL SQL小组进行的测试 TMI 下一张幻灯片为每一个测试的版本显示了这17个程序的集合的统计信息 中值最大和最小值第1和第3四分点 一半的观察都落在第1和第3四分点之间 由PL SQL小组进行的测试 8i比8 0 6快9iR2比8i快NATIVE始终比INTERPRETED快在9iR2中在10g中10g始终比9iR2快INTERPRETED与INTERPRETEDNATIVE与NATIVE 由IFS进行的Beta程序测试 IFS 为大中型企业开发和提供基于组件的业务应用程序领先的全球业务应用程序供应商3 000名员工 产品行销45个国家 全球超过350 000位用户在斯德哥尔摩证券交易所上市 XSSE IFS 由IFS进行
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 自然保护区巡护监测员操作考核试卷及答案
- 重冶火法冶炼工数字化技能考核试卷及答案
- 多彩下雨天(教学设计)-2024-2025学年沪教版(2024)美术一年级上册
- 机修钳工岗位操作规程考核试卷及答案
- 铌碳还原火法冶炼工转正考核试卷及答案
- 第14课 编码的规则制定(教案)四年级上册信息技术浙教版
- 《三十六计》精-华10句晓古今、通谋略
- 搪瓷坯体制作工岗位操作规程考核试卷及答案
- 北京市东城区171中学2017-2018学年高二12月月考物理试题
- 一年级语文上册 第五单元 识字(二)10 升国旗说课稿 新人教版
- 部编版语文二年级上册8古诗二首 登鹳雀楼 公开课一等奖创新教学设计
- SH3503石油化工工序资料表格
- 人居环境科学讲义
- 电梯维保服务投标方案
- 瓷砖干挂专项施工方案
- 药剂学第八版-第一章-绪论课件
- 国外建筑防水技术发展研究报告
- 初中化学物质的分类
- 合同起草审查指南:三观四步法
- 蒙山旅游景区基础设施建设项目可行性研究报告
- 档案制作合同模版
评论
0/150
提交评论