---- ORACLE 数据库作为大型数据库管理系统,近年来一直占有世界上高端数据库的最大份额,其强大而完善的数据库管理功能,以及 ORACLE 公司推陈出新的不断努力,一直成为 IT 业界瞩目的焦点。岭澳核电站的数据库平台采用了 ORACLE7.3 作为后端平台,前端选择了 ORACLE 公司的 DEVELOPER 2000 及 DESIGNER 2000 作为开发工具,采用了目前流行的 CLIENT/SERVER 模式。本人在 ORACLE 系统的开发中,就 ORACLE 的整套开发工具提出一些自己的体会,供同行参考。
---- 一 . ORACLE SQL PLUS 使用技巧 :
---- ①查找重复记录 :
SELECT DRAWING,DSNO FROM EM5_PIPE_PREFAB
WHERE ROWID!=(SELECT MAX(ROWID) FROM EM5
_PIPE_PREFAB D
WHERE EM5_PIPE_PREFAB.DRAWING=D.DRAWING AND
EM5_PIPE_PREFAB.DSNO=D.DSNO);
---- 执行上述 SQL 语句后就可以显示所有 DRAWING 和 DSNO 相同且重复的记录。
---- 删除重复记录 :
DELETE FROM EM5_PIPE_PREFAB
WHERE ROWID!=(SELECT MAX(ROWID) FROM EM5
_PIPE_PREFAB D
WHERE EM5_PIPE_PREFAB.DRAWING=D.DRAWING AND
EM5_PIPE_PREFAB.DSNO=D.DSNO);
---- 执行上述 SQL 语句后就可以刪除所有 DRAWING 和 DSNO 相同且重复的记录。
---- ② 快速编译所有视图
---- 当在把数据库倒入到新的服务器上后 ( 数据库重建 ) ,需要将视图重新编译一遍,因为该表空间视图到其它表空间的表的连接会出现问题,可以利用 PL/SQL 的语言特性,快速编译。
SQL >SPOOL ON.SQL
SQL >SELECT ‘ALTER VIEW ‘||TNAME||'
COMPILE;' FROM TAB;
SQL >SPOOL OFF
然后执行 ON.SQL 即可。
SQL >@ON.SQL
当然,授权和创建同义词也可以快速进行,如:
SQL >SELECT ‘GRANT SELECT ON '
||TNAME||' TO USERNAME;' FROM TAB;
SQL >SELECT ‘CREATE SYNONYM
‘ ||TNAME||' FOR USERNAME.'||TNAME||';' FROM TAB;
③ 用外联接提高表连接的查询速度