- 1、本文档共5页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
异常数据表Exceptions的使用异常数据表Exceptions的使用
异常数据表Exceptions的使用 Constraint约束是我们进行设计的一个重要方面。在日常工作中,充分利用Constraint来描述我们的数据,可以帮助我们在数据层构建起约束关系,保护数据完整性。同时,在一些特殊的场景下,完整的约束还会帮助我们生成更好的执行计划。
在生产环境下,我们进行一些数据操作时候,也会进行约束的管理。例如我们为了加快数据导入加载速度,可能会暂时的将主键、外键和索引等约束禁用掉。操作之后,重新启用。
这种时候,我们会遇到一些例外情况,一些导入的数据可能并不满足约束要求,引发问题。此时,我们就需要发现这些异常数据。
如果这些数据量比较小,我们可以较容易的发现错误数据行记录。但是如果数据量很大,那么这就是一个很费功夫的工作。
在中,我们可以启用Exceptions数据表功能。当我们启用约束的失败的时候,Oracle可以将那些引起失败的数据行记录保存在其中。
1、环境准备
我们选择构建数据表T,环境是Oracle 11gR2。
SQL?select?*?from?v$version;BANNER--------------------------------------------------------------------------------Oracle?Database?11g?Enterprise?Edition?Release?11.2.0.1.0?-?ProductionPL/SQL?Release?11.2.0.1.0?-?ProductionCORE???????11.2.0.1.0????????ProductionSQL?create?table?t?as?select?*?from?dba_objects?where?1=0;Table?created
构建主键约束pk_t_id。
SQL?alter?table?t?add?constraint?pk_t_id?primary?key?(object_id);Table?altered
由于需要大规模加载数据,暂时性的disable掉约束。之后加载脏数据。
SQL?alter?table?t?disable?constraint?pk_t_id;Table?alteredSQL?insert?into?t?select?*?from?dba_objects;72460?rows?inserted
此时,启用主键出错。
SQL?alter?table?t?enable?constraint?pk_t_id;alter?table?t?enable?constraint?pk_t_id
ORA-02437:无法验证(SYS.PK_T_ID) -违反主键
现在,我们希望知道那些数据是违反主键约束的。可能是重复,也可能是主键列出现空置。
2、初始化Exceptions数据表
在默认情况下,Oracle是不会Exceptions数据表的。如果我们需要使用,需要手工的进行安装创建。
安装Exceptions是通过Oracle Home目录下的一个脚本。我们可以通过调用端的脚本实现。
[oracle@bspdev?admin]$?pwd/u01/app/oracle/rdbms/admin[oracle@bspdev?admin]$?env?grep?ORACLE_HOMEORACLE_HOME=/u01/app/oracle[oracle@bspdev?admin]$?ls?-l?grep?exc-rw-r--r--.?1?oracle?oinstall????705?Sep?3?1997?utlexcpt.sql[oracle@bspdev?admin]$?quit-bash:?quit:?command?not?found[oracle@bspdev?admin]$?cat?utlexcpt.sqlremrem?$Header:?utlexcpt.sql,v?1.1?1992/10/20?11:57:02?GLUMPKIN?Stab?$remRem?Copyright?(c)?1991?by?Oracle?CorporationRem???NAMERem?????except.sql?-?one-line?expansion?of?the?nameRem???DESCRIPTIONRem?????short?description?of?component?this?file?declares/definesRem???RETURNSRemRem???NOTESRem?????other?useful?comments,?qualifications,?etc
您可能关注的文档
- 店面专修专业手册店面专修专业手册.doc
- 度 - 中国生物制药行业分析报告度 - 中国生物制药行业分析报告.pdf
- 废气处理施工方案废气处理施工方案.doc
- 康县学前幼儿教育五年发展规划康县学前幼儿教育五年发展规划.doc
- 康威特通信高压直流电源康威特通信高压直流电源.doc
- 康逸苑小区住宅楼节能专康逸苑小区住宅楼节能专.doc
- 康庄小学2009-2010教育教学计划康庄小学2009-2010教育教学计划.doc
- 应用能源化学习题及答案应用能源化学习题及答案.doc
- 廉政建设练兵题库廉政建设练兵题库.pdf
- 廉政教育试题-网友整理版(附答案)廉政教育试题-网友整理版(附答案).doc
- 2024年小学教师工作计划模板(八篇) .pdf
- 2024年药学类之药学(师)题库检测试卷B卷附答案 .pdf
- 2024年必威体育精装版仁爱版五年级数学(上册)期中考卷及答案(各版本) .pdf
- 2024年高中生个人职业生涯规划 .pdf
- 2024年法律职业资格之法律职业客观题二题库与答案 .pdf
- 2024年资产评估师之资产评估基础真题练习试卷B卷附答案 .pdf
- 2024年度社工(初级)《社会工作实务(初级)》考试典型题题库及答案.pdf
- 2024年新员工下半年工作计划范文(3篇) .pdf
- 2024年律师委托代理合同标准版本(三篇) .pdf
- 2024年股权抵押借款合同范本(4篇) .pdf
文档评论(0)