oracle有两个文件,我常用的两个ORACLE的文件

有两个ORACLE的文件我是一直放到桌面上的,作为很好的帮助文档来使用的

他们分别是:

$ORACLE_HOME/rdbms/admin/sql.bsq

$ORACLE_HOME/rdbms/admin/catalog.sql[@more@]

sql.bsq主要记录了ORACLE中的系统字典表的定义,比如过tab$,col$等,通过查询这个文件我可以知道数据字典表的定义,

更好的了解一些操作对系统字典表的更改,对ORACLE的内部操作会有更加深刻的认识。

比如:

create table obj$ /* object table */

( obj# number not null, /* object number */

/* DO NOT CREATE INDEX ON DATAOBJ# AS IT WILL BE UPDATED IN A SPACE

* TRANSACTION DURING TRUNCATE */

dataobj# number, /* data layer object number */

owner# number not null, /* owner user number */

name varchar2("M_IDEN") not null, /* object name */

namespace number not null, /* namespace of object (see KQD.H): */

/* 1 = TABLE/PROCEDURE/TYPE, 2 = BODY, 3 = TRIGGER, 4 = INDEX, 5 = CLUSTER, */

/* 8 = LOB, 9 = DIRECTORY, */

/* 10 = QUEUE, 11 = REPLICATION OBJECT GROUP, 12 = REPLICATION PROPAGATOR, */

/* 13 = JAVA SOURCE, 14 = JAVA RESOURCE */

/* 58 = (Data Mining) MODEL */

subname varchar2("M_IDEN"), /* subordinate to the name */

type# number not null, /* object type (see KQD.H): */

/* 1 = INDEX, 2 = TABLE, 3 = CLUSTER, 4 = VIEW, 5 = SYNONYM, 6 = SEQUENCE, */

/* 7 = PROCEDURE, 8 = FUNCTION, 9 = PACKAGE, 10 = NON-EXISTENT, */

/* 11 = PACKAGE BODY, 12 = TRIGGER, 13 = TYPE, 14 = TYPE BODY, */

/* 19 = TABLE PARTITION, 20 = INDEX PARTITION, 21 = LOB, 22 = LIBRARY, */

/* 23 = DIRECTORY , 24 = QUEUE, */

/* 25 = IOT, 26 = REPLICATION OBJECT GROUP, 27 = REPLICATION PROPAGATOR, */

/* 28 = JAVA SOURCE, 29 = JAVA CLASS, 30 = JAVA RESOURCE, 31 = JAVA JAR, */

/* 32 = INDEXTYPE, 33 = OPERATOR , 34 = TABLE SUBPARTITION, */

/* 35 = INDEX SUBPARTITION */

/* 82 = (Data Mining) MODEL */

ctime date not null, /* object creation time */

mtime date not null, /* DDL modification time */

stime date not null, /* specification timestamp (version) */

status number not null, /* status of object (see KQD.H): */

/* 1 = VALID/AUTHORIZED WITHOUT ERRORS, */

/* 2 = VALID/AUTHORIZED WITH AUTHORIZATION ERRORS, */

/* 3 = VALID/AUTHORIZED WITH COMPILATION ERRORS, */

/* 4 = VALID/UNAUTHORIZED, 5 = INVALID/UNAUTHORIZED */

remoteowner varchar2("M_IDEN"), /* remote owner name (remote object) */

linkname varchar2("M_XDBI"), /* link name (remote object) */

flags number, /* 0x01 = extent map checking required */

/* 0x02 = temporary object */

/* 0x04 = system generated object */

/* 0x08 = unbound (invoker's rights) */

/* 0x10 = secondary object */

/* 0x20 = in-memory temp table */

/* 0x80 = dropped table (RecycleBin) */

/* 0x100 = synonym VPD policies */

/* 0x200 = synonym VPD groups */

/* 0x400 = synonym VPD context */

oid$ raw(16), /* OID for typed table, typed view, and type */

spare1 number, /* sql version flag: see kpul.h */

spare2 number, /* object version number */

spare3 number,

spare4 varchar2(1000),

spare5 varchar2(1000),

spare6 date

)

storage (initial 10k next 100k maxextents unlimited pctincrease 0)

/

catalog.sql主要是记录了dba_,all_,user_,session_等一些常用的数据字典视图的定义,方便日常的查询。

比如:

create or replace view USER_TAB_PRIVS

(GRANTEE, OWNER, TABLE_NAME, GRANTOR, PRIVILEGE, GRANTABLE, HIERARCHY)

as

select ue.name, u.name, o.name, ur.name, tpm.name,

decode(mod(oa.option$,2), 1, 'YES', 'NO'),

decode(bitand(oa.option$,2), 2, 'YES', 'NO')

from sys.objauth$ oa, sys.obj$ o, sys.user$ u, sys.user$ ur, sys.user$ ue,

table_privilege_map tpm

where oa.obj# = o.obj#

and oa.grantor# = ur.user#

and oa.grantee# = ue.user#

and oa.col# is null

and u.user# = o.owner#

and oa.privilege# = tpm.privilege

and userenv('SCHEMAID') in (oa.grantor#, oa.grantee#, o.owner#)

/

有了这两个文件可以帮助你更好的使用ORACLE。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值