1、ORACLE数据库中的外键约束名都在表user_constraints中可以查到。其中constraint_type='R'表示是外键约束。
2、用SQL查出数据库中所以外键的约束名:
select 'alter table '||table_name||' enable constraint '||constraint_name||';' from user_constraints where constraint_type='R';
select 'alter table '||table_name||' disable constraint '||constraint_name||';' from user_constraints where constraint_type='R';
3、启用外键约束的命令为:alter table table_name enable constraint constraint_name ;
4、禁用外键约束的命令为:alter table table_name disable constraint constraint_name;
解决 Oracle数据库删除某张表里的数据时,有时由于有外键约束,外键表里有数据,主表数据删除不了,而外键命名不规范,难找外键表:
select * from user_constraints where constraint_name='FK3B9A87D1682110AF' and constraint_type = 'R'; 根据外键名称获取添加外键的数据表。
重建索引:
1、drop原索引,然后再创建索引
|
1 2 3 |
|
2 、直接重建索引
|
1 2 3 |
|
rebuild是快速重建索引的一种有效的办法,因为它是一种使用现有索引项来重建新索引的方法。如果重建索引时有其他用户在对这个表操作,尽量使用带online参数来最大限度的减少索引重建时将会出现的任何加锁问题。由于新旧索引在建立时同时存在,因此,使用这种重建方法需要有额外的磁盘空间可供临时使用,当索引建完后把老索引删除,如果没有成功,也不会影响原来的索引。利用这种办法可以用来将一个索引移到新的表空间。
本文介绍Oracle数据库中外键约束的查询、启用及禁用方法,以及如何通过重建索引来优化数据库性能,包括使用在线重建索引的技巧。

1190

被折叠的 条评论
为什么被折叠?



