这些都是SYS下的数据字典,我查了一下ORACLE_HOME/RDBMS/ADMIN/CATALOG.SQL(该脚本用于生成数据字典),发现和V$SESSION有关的操作有以下几步:create or replace view v_$session as select * from v$session;
drop public synonym v$session;
create public synonym v$session for v_$session;
grant select on v_$session to select_catalog_role;没想明白到底怎么生成的.看来要从头到尾看一下建库脚本才行.

解决方案 »

  1.   

    做了一些测试,事实上,在数据字典生成以前,SYS用户下已经建立了很多对象,这些对象可以从SYS.OBJ$中看到,对象的类型为:
    0 - 未知
    1 - 内部对象,未知
    2 - 表
    3 - 内部序列???
    5 - 同义词
    6 - 序列
    9 - 包头
    11 - 包体
    13 - 数据类型
    21 - 好像是LOB类型我无法搞清这些对象的所有含义,但是可以确定的是在数据字典背后,还有一层对象服务于数据字典(包括重要的STANDARD包,里面定义了所有的函数及操作).
    在数据字典创立以前,已经可以使用这样的SQL了:
    SELECT * FROM V$SESSION;
    说明系统已经能够解析V$SESSION为一个表或者VIEW了