Oracle10g新特性——记录DML错误日志(二)
当一个DML运行的时候,如果遇到了错误,则这条语句会整个回滚,就好像没有执行过。不过对于一个大的DML而言,如果个别数据错误而导致整个语句的回滚,会浪费很多的资源和运行时间,从10g开始Oracle支持记录DML语句的...
Oracle10g新特性——记录DML错误日志(一)
当一个DML运行的时候,如果遇到了错误,则这条语句会整个回滚,就好像没有执行过。不过对于一个大的DML而言,如果个别数据错误而导致整个语句的回滚,会浪费很多的资源和运行时间,从10g开始Oracle支持记录DML语句的...
限制DDL操作(三)
出于安全性或避免影响性能的考虑,在产品数据库中有时候会禁止或者在一定时间段内限制DDL语句的发生。Oracle也提高了很多方法来实现这个功能,这个简单介绍一下。这篇介绍DML_LOCKS初始化参数。限制DDL操作(一)...
限制DDL操作(二)
出于安全性或避免影响性能的考虑,在产品数据库中有时候会禁止或者在一定时间段内限制DDL语句的发生。Oracle也提高了很多方法来实现这个功能,这个简单介绍一下。这篇介绍DISABLE TABLE LOCK语句。限制DDL操作(一...
限制DDL操作(一)
出于安全性或避免影响性能的考虑,在产品数据库中有时候会禁止或者在一定时间段内限制DDL语句的发生。Oracle也提高了很多方法来实现这个功能,这个简单介绍一下。这篇介绍利用触发器来限制DDL语句。 ...
VAULT环境初始化参数的不同
对于VAULT环境,除了限制了SYS、SYSTEM等传统DBA用户外,还修改了数据库的一些默认初始化参数。 VAULT的主要功能就是提高系统的安全性,将DBA和安全管理员的功能分开,因此本着这个原则,VAULT环境在...
Oracle安装过程对数据库级语言设置的影响
今天一个朋友问到这个问题,发现不同的建库方式对数据库级参数的影响是不同的。 语言的设置分为3个级别:数据库级、实例级和会话级。数据库级是在数据库创建时确定的,实例级根据数据库启动时初始化...
迁移过程中出现的open failed错误
在数据库的迁移过程中,碰到了这个错误。 这次迁移主要是切换存储,不涉及Oracle版本和平台的变化,因此整个操作都很简单,唯一需要注意的是,ORACLE_HOME的位置也发生了变化。在迁移过程中,采用tar...
利用SQL解释一个魔术
昨天在星夜上看到一个扑克的魔术,很有意思。 首先描述一个这个魔术,从一副扑克牌中随意抽取21张牌。然后让人随意选择其中的一张牌,牢记后,将其放回到牌中,然后任意洗牌。下面根据发牌的规则,将...
RAC环境在ASM上创建表空间出错ORA-569
在一个的测试数据库上,创建表空间时出现了这个错误。 由于数据库环境比较复杂,简单描述一下。这个测试环境安装的是Oracle 1106 for Solaris 10 sparc 64bit的RAC环境,搭建了ASM实例用于存放共享数...
ORA-600(17069)错误的解决过程
今天在一个报表数据库后台发现了这个错误。简单描述一下问题的解决过程。 详细的错误信息为:Fri Feb 20 08:16:44 2009Errors in file /u1/oracle/admin/repdb01/bdump/repdb01_j015_5099.trc:ORA-00...
TABLE居然也是数据类型
发现了一个很有意思的现象,居然TABLE也可以当作数据类型用。 用TABLE作为数据类型建表:SQL> CREATE TABLE T_TABLE (ID TABLE);表已创建。SQL> DESC T_TABLE 名称 &n...
触发器迭代限制
Oracle的触发器在触发事件发生后,会自动执行触发器的操作,而这个触发器的操作又可能会触发另一个触发器,这就导致了触发器的迭代。 今天在看Concept的时候,发现Oracle对于触发器迭代是有限制的,最...
实现自然数N的全排列
今天同事问了一个问题,如何实现一个数N的全排列,也就是Pn。对于一个3来说,打印结果应该包括123、132、213、231、312、321。 当然还有一个小要求,不能使用递归算法。其实算法应该不复杂,不是递归...
外键列上是否需要索引
其实这个问题应该算是老生常谈了。这两天看concept看到这里,于是就在说说这个问题。 外键列上缺少索引会带来两个问题,限制并发性、影响性能。而这两个问题中的任意一个都可能会造成严重性能问题。...
空间数据库三维空间两点距离计算错误
没想到这么基础的问题,Oracle也会出现错误,看来这个功能真是很少有人使用。 在9i和10g中,计算三维空间两点间距离出现错误,Oracle仅仅就算了X和Y这二维的结果:SQL> CONN YANGTK/YANGTK@YTK92已连...
利用空间数据库求两点距离
前两天在实现一个SQL的时候,需要计算平面上2点间的距离,如果使用SQL函数实现,代码比较长,于是想到能否利用空间数据库的结构来实现这个功能。 测试环境为11.1.0.6,如果是9i,由于没有创建同义词,...
小议Oracle外键约束修改行为(七)
Oracle的外键用来限制子表中参考的字段的值,必须在主表中存在。而且在主表的记录发生变化导致外键参考唯一约束值发生了变化时,定义了一系列的动作。这篇描述一下如何实现RESTRICT。小议Oracle外键约束修改行为(...
利用SQL实现一个图形概率问题
今天和同事聊天的时候,同事提到开发版有个SQL问题比较有意思:http://www.itpub.net/thread-1122842-1-1.html在一个7×7的图形内,构造一个等腰三角形的概率有多大。 说实话,用SQL实现比较困难,但...
小议Oracle外键约束修改行为(六)
Oracle的外键用来限制子表中参考的字段的值,必须在主表中存在。而且在主表的记录发生变化导致外键参考唯一约束值发生了变化时,定义了一系列的动作。这篇描述一下如何实现SET DEFAULT。小议Oracle外键约束修改行...