Windows_oracle10g_2013_10_31_管理用户的对象

本文介绍了Oracle数据库中管理用户对象的一些关键操作,包括约束条件的启用和验证、索引查看、主键约束处理以及执行计划的设定。详细讨论了如何处理非法数据、设置约束属性以及调整执行计划以优化查询性能。此外,还涉及了临时表的使用及其两种模式以及数据字典的概念。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.约束条件状态的解释

disable novalidate 等同于disable,表示禁用约束,并且对新旧数据不再进行check

enable validate,等同于enable。表示启用约束,并且对新旧数据进行check

2.查看索引


3.对于已有数据进行主键约束。

当旧数据有非法数据,例如,两个值一样的,在启用主键约束的时候会执行失败,解决办法

3.1检查非法数据,然后将非法数据删除,在重新启用主键约束。

alter table t01 enable constraint pk_no1;

3.2修改约束的属性,使主键约束延迟生效

alter table t01 add constraint pk_no1 primary key(deptno)  deferrable enable novalidate;

因为是 enable novalidate,所以不会对历史数据进行check。但是会对新添加的数据进行check

4.在禁用约束时使用disable validate,对新添加的数据,不进行约束检查,不允许insert 操作。对历史数据做约束检查。不允许update,delete 但是允许做select

5.执行计划的设定。

set autotrace on:SQL语句的执行结果+SQL语句的分析结果

set autotrace only:只有当前sql的分析结果

set sutotrace off:关闭执行计划

4.1在plsql的sys用户下,打开执行计划,结果不行。在cmd里面就可以



查看dept表上的索引情况

如果在选择的时候对deptno字段 编辑(例如where deptno+10 in (20,30)),则索引失效

5.查看用户的所有表名


6.通过执行计划去查看视图



通过执行计划可以查看视图是由哪些表组成,通过视图查看基础数据时,同样使用了索引。

关闭执行计划

set autotrace off

7.临时表

为每个会话提供专有的数据,会话之间相互不受影响,临时表只限于当前会话的使用

会话或者事务结束时会自动清除数据

对于临时表的操作,不生成日志,不生成undo数据,没有锁,没有备份,不进行相关保护

7.on commit delete rows 用户进行commit会将数据 进行清除

   on commitpreserve rows用户进行commit,会将数据进行暂时保留,但会话结束时会丢失

8.数据字典



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值