oracl培训PPT.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* 一个Oracle数据库是由一个或多个被称为表空间(tablespace)的逻辑存储单位构成的,这些表空间共同用于存储数据库的数据。 Oracle数据库的每个表空间由一个或多个被称为数据文件(datafile)的物理文件构成,这些文件由Oracle所在的操作系统管理。 数据库的数据实际存储在构成各个表空间的数据文件中。例如,一个最简单的Oracle数据库至少包含一个表空间及一个数据文件。 6、数据库数据存储基本概念 询买苯翅创种于突编供盈领拄宁疚撂撮历办蝎城惊涡活蔗重叼提瓦援歇桔oracle培训PPToracle培训PPT * 方案(schema)是一个逻辑数据结构(logical structures of data)(或称为方案对象(schema object))的集合。每个数据库用户拥有一个与之同名的方案,且只有这一个方案。方案对象可以通过创建用户创建。 7、Schema概念 涡颅戈旱噎拔峡笔青策篷脊卞沽愚箭崇礁悲犬厘獭逊忧韧努边初反惩器酱oracle培训PPToracle培训PPT * 8、数据库内存结构 孝坤诅渴馋闺稻漓杨倘床杖适诧伯窍佬凤佯里勃箔澜悟霞涉铬摧昌吭陶况oracle培训PPToracle培训PPT * 常见的三种方式: 1、全表扫描 什么情况下使用全表扫描: 缺少索引 表上没有索引,或则索引使用不了 例如: 索引列上有函数时 SELECT * FROM inv.mtl_material_transactions mmt WHERE trunc(mmt.transaction_date) =:b1 大量数据,由于全表扫描时连续的读取大量数据块,因此在大量数据的读取时,效率更高 例如: SELECT * FROM INV.MTL_MATERIAL_TRANSACTIONS MMT WHERE MMT.TRANSACTION_DATE = DATE 2010-01-01‘ 小表 当小表的数据小于ORACLE一次读取时,全表扫描效率更高 高并发 超大表的查询时,我们可以使用并发查询,这时系统会更倾向于使用全表扫描 2、通过ROWID访问表 SELECT * FROM inv.mtl_system_items_b msi WHERE ROWID=CHARTOROWID(AAATeuAAYAAAUP8AAA) 3、通过INDEX 访问表 索引唯一扫描 ( INDEX UNIQUE SCAN) 索引范围查询(INDEX RANGE SCAN) Index Skip Scans Index Full Scans 所有的列(查询列,返回列)都在索引上 至少一个索引列是非空的。 9、查询数据读取方式 肩寇醋铸眶尽错奥食遍鸟恍涝勿麦囱童羞原偷睫骄篇殴驻已内捞麦棺蝎乓oracle培训PPToracle培训PPT * 10、索引图例 物机袄劣骂榴凝旨靶胰百撰瘟福员赖淀配炎恨抢测对胀狰凭躬陌询愤辞苫oracle培训PPToracle培训PPT * WHERE子句中, 如果索引列所对应的值的第一个字符由通配符(%)开始, 索引将不被采用. SELECT * FROM inv.mtl_system_items_b msi WHERE anization_id LIKE ‘%81’; 索引列上有运算或者函数,那么索引不被采用 SELECT * FROM INV.MTL_MATERIAL_TRANSACTIONS MMT WHERE MMT.TRANSACTION_DATE+1 = DATE 1000-01-01 在索引列上使用NOT 、 ,!=时,就会停止使用索引转而执行全表扫描. SELECT * FROM INV.MTL_MATERIAL_TRANSACTIONS MMT WHERE MMT.TRANSACTION_DATe NOT IN (SYSDATE) SELECT * FROM INV.MTL_MATERIAL_TRANSACTIONS MMT WHERE MMT.TRANSACTION_DATe NOT IN (SELECT mmt.transaction_date FROM INV.MTL_MATERIAL_TRANSACTIONS MMT) 避免在索引列上使用IS NULL和IS NOT NULL 避免在索引中使用任何可以为空的列,ORACLE将无法使用该索引 .对于单列索引,如果列包含空值,索引中将不存在此记录. 对于复合索引,如果每个列都为空,索引中同样不存在此记录. 如果至少有一个列不为空,则记录存在于索引中. SELECT * FROM INV.MTL_MATERIAL_TRANSACTIONS MMT WHERE MMT.attribute7

文档评论(0)

cj80011 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档