ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 导出数据系统的应用(程序)

导出数据系统的应用(程序)

原创 Linux操作系统 作者:oracleclub 时间:2011-12-03 00:02:53 0 删除 编辑
以命令行方式获取系统的设计

切记:注意力集中在大表并且经常操作的表上
1,导出E-R图
select * from cat ;
2,desc “表名”
3,用数据字典user_constraints和user_cons_colummns导出表上的约束,画出E-R图,偷取别人好的设计
4,获取索引信息,user_indexes和user_ind_columns
情形:
1,如OLTP,大多数的表都是第一或第二范式,有大量的冗余,通知设计者改,他们改不改无所谓,你什么也不用做
2,如DW,发现上面存储了大量的细节数据,可以通知设计者,将细节数据综合后再存入数据仓库,你什么也不用做
无论是OLTP或DW:有效的利用内存,进大限度地减少I/O

=======================================================================================
=======================================================================================

用类似的方法导出包,触发器,存储过程等源代码
SQL> conn hr/hr;
Connected.


SQL> select OBJECT_NAME,OBJECT_TYPE,CREATED,STATUS,TEMPORARY 
  2  from user_objects
  3  where OBJECT_TYPE in ('PROCEDURE','FUNCTION');

OBJECT_NAME          OBJECT_TYPE         CREATED   STATUS  T
-------------------- ------------------- --------- ------- -
SECURE_DML           PROCEDURE           29-NOV-11 VALID   N
ADD_JOB_HISTORY      PROCEDURE           29-NOV-11 VALID   N



SQL> desc ADD_JOB_HISTORY--查看参数
PROCEDURE ADD_JOB_HISTORY
 Argument Name                  Type                    In/Out Default?
 ------------------------------ ----------------------- ------ --------
 P_EMP_ID                       NUMBER(6)               IN
 P_START_DATE                   DATE                    IN
 P_END_DATE                     DATE                    IN
 P_JOB_ID                       VARCHAR2(10)            IN
 P_DEPARTMENT_ID                NUMBER(4)               IN

SQL> select line,text from user_source where name = 'ADD_JOB_HISTORY';--查看内容

LINE TEXT
---- --------------------------------------------------------------------------------
   1 PROCEDURE add_job_history
   2   (  p_emp_id          job_history.employee_id%type
   3    , p_start_date      job_history.start_date%type
   4    , p_end_date        job_history.end_date%type
   5    , p_job_id          job_history.job_id%type
   6    , p_department_id   job_history.department_id%type
   7    )
   8 IS
   9 BEGIN
  10   INSERT INTO job_history (employee_id, start_date, end_date,
  11                            job_id, department_id)
  12     VALUES(p_emp_id, p_start_date, p_end_date, p_job_id, p_department_id);
  13 END add_job_history;

13 rows selected.

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/26465805/viewspace-712652/,如需转载,请注明出处,否则将追究法律责任。

上一篇: 函数索引
请登录后发表评论 登录
全部评论

注册时间:2011-11-22

  • 博文量
    61
  • 访问量
    82159