几年的工作经验漫漫积累,本人在ORACLE系统的开发中,就ORACLE的整套开发工具提出一些自己的体会,供大家参考。一.ORACLESQLPLUS使用技巧:①查找重复记录:SELECTDRAWING
几年的工作经验漫漫积累,本人在ORACLE系统的开发中,就ORACLE的整套开发工具提出一些自己的体会,供大家参考。
一. ORACLE SQL PLUS 使用技巧:
①查找重复记录:
执行上述SQL语句后就可以显示所有DRAWING和DSNO相同且重复的记录。
删除重复记录:
② 快速编译所有视图
当在把数据库倒入到新的服务器上后(数据库重建),需要将视图重新编译一遍,因
为该表空间视图到其它表空间的表的连接会出现问题,可以利用PL/SQL的语言特性,快
速编译。
然后执行ON.SQL即可。
SQL >@ON.SQL
当然,授权和创建同义词也可以快速进行,如:
③ 用外联接提高表连接的查询速度
在作表连接(常用于视图)时,常使用以下方法来查询数据:
但是若表A有10000条记录,表B有10000条记录,则要用掉30分钟才能查完,主要因
为NOT IN要进行一条一条的比较,共需要10000*10000次比较后,才能得到结果。该用外
联接后,可以缩短到1分左右的时间:
怎样在数据库触发器中使用列的新值与旧值
在数据库触发器中几乎总是要使用触发器基表的列值,如果某条语句需要某列修改
前的值,使用:OLD就可以了,使用某列修改后的新值,用:NEW就可以了。如:OLD.DEPT_
NO,:NEW.DEPT_NO。
如何在一个FORM中调用另一个FORM,或在一个块中调用另一个块时显示特定的
记录有时用户会要求在调用另一个FORM时,只显示相关的记录,举例如下,在一个FORM
的块中有一个按钮,在按钮触发子中加入如下代码:
二.数据库管理
① 在删除一个表中的全部数据时,须使用TRUNCATE TABLE 表名;因为用DROP TAB
LE,DELETE * FROM 表名时,TABLESPACE表空间该表的占用空间并未释放,反复几次DR
OP,DELETE操作后,该TABLESPACE上百兆的空间就被耗光了。
② 数据库文件的移动方法
当想将数据库文件移动到另外一个目录下时,可以用ALTER DATABASE命令来移动(
比ALTER TABLESPACE适用性强):
1. 使用SERVER MANAGER关闭实例.
2. 使用操作系统命令来移动数据库文件位置(假设这里操作系统为SOLARIS 2.6).
在UNIX中用 mv命令可以把文件移动到新的位置,
#mv /ora13/orarun/document.dbf /ora12/orarun
3. 装载数据库并用alter database命令来改变数据库中的文件名.
4. 启动实例.
SVRMGR > alter database open;
ORACLE数据库开发经验总结
本站技术原创栏目文章均为中睿原创或编译,转载请注明:文章来自中睿,本站保留追究责任的权利。