摘要:DEFERRABLE 约束和级联更新从Oracle8.0 开始,我们还能够延迟约束检查,对于许多操作来说,这很有好处。首先能想到的是,可能需要将一个主键的UPDATE 级联到子键。也许很多人会说:这没有必要,因为主键是不可变的(我就是这些人之一),但是还有人坚持要有级联UPDATE。有了可延迟的约束,就使得级联更新成为可能。注意一般认为,完成更新级联来修改主键是很不好的做法。这会破坏主键的意图。如果你必须做一次级联更新来修正不对的信息,这倒是可以的;但是如果你发现自己在不停地完成级联更新,并把这当做应用的一部分,那就是另一码事了,你应该退一步,重新考虑一下这个过程。倘若真是这样,能你就是错把鸡 阅读全文
Asktom:get_stat_val函数显示SQL执行I/O相关数据的方法。
2011-09-23 13:44 by Tracy., 835 阅读, 0 推荐, 收藏, 编辑
摘要:Hi Tom, You mentioned this in one of your responses. <<So, a procedure that has been running for 10 hours and finished in your window would dump ALL of its cpu time into your window.>> Could you please clarify if this logic of dumping the time in the snapshot at the end of the procedure 阅读全文
转:浅谈Oracle学习方法
2011-09-23 12:35 by Tracy., 443 阅读, 0 推荐, 收藏, 编辑
摘要:玩Oracle也快2年了,一直都是在整理Oracle的相关技术文章,以前是学J2EE的, 也专门的去培训机构培训了一年,那时是一门心思的认为就搞开发了,可后来的事实证明我还是与Oracle更有缘一点。 记得2008年刚找工作那会,一家公司招Java工程师,我到公司不久,项目却没了,因为公司还有数据库的业务,所以我就转像数据库了。当时对Oracle 是一点了解都没有, 只知道它是一个大型的数据库。 也许是搞开发太久了,一开始搞的时候还十分的不愿意, 总觉得DBA 没有开发有前途。 后来慢慢的发现,其实相对而言DBA 更好一点。 因为开发不能搞一辈子,30岁之后肯定要转型。 而DBA确是工作时间越 阅读全文
转:Oracle ASM 系列 小结
2011-09-23 11:08 by Tracy., 564 阅读, 0 推荐, 收藏, 编辑
摘要:在metalink上看到一篇有关ASM 总结的文章,贴出来,共同学习。 一. Automatic Storage Management (ASM) Alerts: Alert: Querying v$asm_file Gives ORA-15196 After ASM Was Upgraded From 10gR2 To 11gR2 with an AU size > 1M [ID 1145365.1] http://blog.csdn.net/tianlesoftware/archive/2011/04/05/6302817.aspx 二. Automati... 阅读全文
Oracle:索引列压缩的分析对比
2011-09-21 13:39 by Tracy., 3386 阅读, 0 推荐, 收藏, 编辑
摘要:首先,我们结合index_stats得到的索引分析数据看一下,在不同索引列压缩情况下的效果。然后统一总结实验效果。1.创建测试用表t_compress_indexcreate table t_compress_index as select * from all_objects;2.不使用索引压缩技术创建索引sec@secooler> create index idx_t_compress_index on t(owner,object_type,object_name);Index created.sec@secooler> analyze index idx_t_compres 阅读全文
Oracle:在Oracle中使用锁进行并发控制
2011-09-20 14:04 by Tracy., 871 阅读, 0 推荐, 收藏, 编辑
摘要:现在主流的数据库管理系统中,都支持多个事务同时执行,这样提高了数据库管理系统的运行效率。试想如果只允许一个事务运行,而这个事务又需要很长的时间,那么其他的用户必须一直等待该事务结束,效率何其低下。执行不同的事务虽然可以提高性能,但是有可能会破坏数据的完整性,所以我们必须在性能和数据完整性之间进行权衡。那么什么是并发控制呢?并发控制是数据库管理系统协调多个运行事务的行为。首先了解一下,并发控制中经常遇到的三个问题。 脏读 我们通过一个products表来解释一下什么是脏读,该products表有一列quantity(数量),现在的值为20。假如现在有两个事务T1和T2,它们都是要更新qu... 阅读全文
Oracle:反向键索引
2011-09-16 11:22 by Tracy., 4669 阅读, 1 推荐, 收藏, 编辑
摘要:2、显式为主键列建立反向键索引 2.1 反向键索引的原理和用途 我们知道Oracle会自动为表的主键列建立索引,这个默认的索引是普通的B-Tree索引。对于主键值是按顺序(递增或递减)加入的情况,默认的B-Tree索引并不理想。这是因为如果索引列的值具有严格顺序时,随着数据行的插入,索引树的层级增长很快。搜索索引发生的I/O读写次数和索引树的层级数成正比,也就是说,一棵具有5个层级的B-Tree索引,在最终读取到索引数据时最多可能发生多达5次I/O操作。因而,减少索引的层级数是索引性能调整的一个重要方法。 如果索引列的数据以严格的有序的方式插入,那么B-Tree索引树将变成一棵不对称的&quo 阅读全文
了解IHttpModule接口事件执行顺便 获取Session
2011-09-14 17:23 by Tracy., 213 阅读, 0 推荐, 收藏, 编辑
摘要:最近公司一个项目让人SQL注入了~为了临时先解决这个问题,使攻击者不再危害数据库。初步决定先采用IHttpModule过滤一道请求。public class HttpModule:IHttpModule{ public HttpModule() { // // TODO: 在此处添加构造函数逻辑 // } IHttpModule 成员#region IHttpModule 成员 public void Init(System.Web.HttpApplicati... 阅读全文
Ihttphandler,Ihttpmodule
2011-09-14 17:20 by Tracy., 371 阅读, 1 推荐, 收藏, 编辑
摘要:1.ihttpModule(粘合剂,侦听application事件或用户自定义事件。)2.ihttpHandler(可以自定义对特定资源进行处理)2.ihttpHandlerFactory(可以用来进行在自定义ihttpmodule或标准的ihttpModule之间进行选择)ihttpHandler拦截httpRequest.ihttpModule是事件侦听器(其作用跟glob.aspx有些相同)区别:ihttpHandler 完全负责页面的请求和响应ihttpModule 负责在其Init事件中申请的HttpApplication事件,执行完还要按HttpApplication其他事件执行应 阅读全文
美国人吃了交通罚单怎么办?
2011-09-08 09:42 by Tracy., 411 阅读, 0 推荐, 收藏, 编辑
摘要:一次朋友们在我家聚会,一人临走时发现车的雨刷上夹了一张警察开的罚单,说他违章停车。我看了之后是十二万分的震惊,因为当时我搬来已经两年多,竟不知道靠我家的这侧马路不能停车。曾注意过旁边邻居家门前有个不能停车的标志,因为她家位于丁字路口的那一横上,不能停车是常识,没想到那个牌子管的是整个一条街。想想两年半的时间里,到我家来的人大多都是违章停车!平时居民小区里鲜有警察光临,所以谁都没意识到这个问题。有人建议朋友到法庭上申诉,因为那个不许停车标志离我家有二十米,又在路口上,很难让人联想到整条街都不许停车。可是上庭花时间精力,朋友的停车罚单金额只有十五元,干脆认罚了事。在北美开车吃罚单是家常便饭,提起这 阅读全文
案例编号 0005---index range scan, index full scan, out-of_date statistics
2011-09-02 15:53 by Tracy., 443 阅读, 0 推荐, 收藏, 编辑
摘要:案例编号: 0005关键词: index range scan, index full scan, out-of_date statistics正文:出问题的SQL:SELECT * FROM ZORYZYZ.VD_TLOWVM_KSLGL WHERE member_id = :1 AND status IN (:2) ORDER BY member_id, id当前的执行计划(index full scan):-----------------------------------------------------------------------------------| Id ... 阅读全文
Index Full Scan && Index Range Scan
2011-09-02 10:50 by Tracy., 9219 阅读, 0 推荐, 收藏, 编辑
摘要:Index Full Scan reads the whole index, in an ordered manner (i.e. it "walks" the index from the lowest value to the highest value).(Index Fast Full Scan reads the whole index, without bothering about ordering, it just reads all the index leaf blocks using multiblock reads -- similar to a T 阅读全文
Oracle学习网址收集中
2011-09-01 15:45 by Tracy., 356 阅读, 0 推荐, 收藏, 编辑
摘要:官方文档:http://tahiti.oracle.com/metalink:http://metalink.oracle.comitpub:www.itpub.comTOM:asktom.oracle.comoracle forum:http://forums.oracle.com/forums/main.jspa?categoryID=84OTN:http://www.oracle.com/technology/index.htmlwww.oracle.com.cnhttp://yangtingkun.itpub.net/http://space.itpub.net/?4227www.ey 阅读全文
物化视图快速刷新不支持标准外联接写法
2011-09-01 15:40 by Tracy., 1209 阅读, 0 推荐, 收藏, 编辑
摘要:发现对于REFRESH FAST ON COMMIT物化视图,并不支持标准外连接的写法,而Oracle特有的(+)方式则没有问题。Oracle对于标准外联接的写法支持的并不好,类似的bug已经不是第一次碰到了。SQL> CREATE TABLE T_P (ID NUMBER PRIMARY KEY, NAME VARCHAR2(30));表已创建。SQL> CREATE TABLE T_F (ID NUMBER PRIMARY KEY, FID NUMBER);表已创建。SQL> CREATE MATERIALIZED VIEW LOG ON T_P 2 WITH ROWID 阅读全文
Asktom:Tom对Consitent Get的解释及分析
2011-08-31 16:27 by Tracy., 318 阅读, 0 推荐, 收藏, 编辑
摘要:You AskedTom:create table test( a int);beginfor i in 1..10000 loopinsert into test values (i);end loop;end;set autotrace onselect count(0) from test;Execution Plan---------------------------------------------------------- 0 SELECT STATEMENT Optimizer=CHOOSE 1 0 SORT (AGGREGATE) 2 ... 阅读全文