ORACLE系統表大全


下面全面是對Oracle系統表的一些介紹: 數據字典dict總是屬於Oracle用戶sys的。

  1、用戶:

   select username from dba_users;

  改口令

   alter user spgroup identified by spgtest;

  2、表空間:

   select * from dba_data_files;

   select * from dba_tablespaces;//表空間

 

   select tablespace_name,sum(bytes), sum(blocks)

    from dba_free_space group by tablespace_name;//空閑表空間

 

   select * from dba_data_files

    where tablespace_name='RBS';//表空間對應的數據文件

 

   select * from dba_segments

    where tablespace_name='INDEXS';

  3、數據庫對象:

   select * from dba_objects;

   CLUSTER、DATABASE LINK、FUNCTION、INDEX、LIBRARY、PACKAGE、PACKAGE BODY、

   PROCEDURE、SEQUENCE、SYNONYM、TABLE、TRIGGER、TYPE、UNDEFINED、VIEW。

  4、表:

   select * from dba_tables;

   analyze my_table compute statistics;->dba_tables后6列

   select extent_id,bytes from dba_extents

   where segment_name='CUSTOMERS' and segment_type='TABLE'

   order by extent_id;//表使用的extent的信息。segment_type='ROLLBACK'查看回滾段的空間分配信息

   列信息:

    select distinct table_name

    from user_tab_columns

    where column_name='SO_TYPE_ID';

  5、索引: 

   select * from dba_indexes;//索引,包括主鍵索引

   select * from dba_ind_columns;//索引列

   select i.index_name,i.uniqueness,c.column_name

    from user_indexes i,user_ind_columns c

     where i.index_name=c.index_name

     and i.table_name ='ACC_NBR';//聯接使用

  6、序列:

   select * from dba_sequences;

  7、視圖:

   select * from dba_views;

   select * from all_views;

  text 可用於查詢視圖生成的腳本

  8、聚簇:

   select * from dba_clusters;

  9、快照:

   select * from dba_snapshots;

  快照、分區應存在相應的表空間。

  10、同義詞:

   select * from dba_synonyms

    where table_owner='SPGROUP';

    //if owner is PUBLIC,then the synonyms is a public synonym.

     if owner is one of users,then the synonyms is a private synonym.

  11、數據庫鏈:

   select * from dba_db_links;

  在spbase下建數據庫鏈

   create database link dbl_spnew

   connect to spnew identified by spnew using 'jhhx';

   insert into acc_nbr@dbl_spnew

   select * from acc_nbr where nxx_nbr='237' and line_nbr='8888';

  12、觸發器:

   select * from dba_trigers;

  存儲過程,函數從dba_objects查找。

  其文本:select text from user_source where name='BOOK_SP_EXAMPLE';

  建立出錯:select * from user_errors;

  oracle總是將存儲過程,函數等軟件放在SYSTEM表空間。

  13、約束:

  (1)約束是和表關聯的,可在create table或alter table table_name add/drop/modify來建立、修改、刪除約束。

  可以臨時禁止約束,如:

   alter table book_example

   disable constraint book_example_1;

   alter table book_example

   enable constraint book_example_1;

  (2)主鍵和外鍵被稱為表約束,而not null和unique之類的約束被稱為列約束。通常將主鍵和外鍵作為單獨的命名約束放在字段列表下面,而列約束可放在列定義的同一行,這樣更具有可讀性。

  (3)列約束可從表定義看出,即describe;表約束即主鍵和外鍵,可從dba_constraints和dba_cons_columns 查。

   select * from user_constraints

   where table_name='BOOK_EXAMPLE';

   select owner,CONSTRAINT_NAME,TABLE_NAME

    from user_constraints

    where constraint_type='R'

    order by table_name;

  (4)定義約束可以無名(系統自動生成約束名)和自己定義約束名(特別是主鍵、外鍵)

  如:create table book_example

    (identifier number not null);

    create table book_example

    (identifier number constranit book_example_1 not null);

 

 

 dba_開頭.....
   dba_users    數據庫用戶信息
   dba_segments 表段信息
   dba_extents   數據區信息
   dba_objects   數據庫對象信息
   dba_tablespaces  數據庫表空間信息
   dba_data_files   數據文件設置信息
   dba_temp_files  臨時數據文件信息
   dba_rollback_segs  回滾段信息
   dba_ts_quotas  用戶表空間配額信息
   dba_free_space數據庫空閑空間信息
   dba_profiles  數據庫用戶資源限制信息
   dba_sys_privs  用戶的系統權限信息
   dba_tab_privs用戶具有的對象權限信息
   dba_col_privs用戶具有的列對象權限信息
   dba_role_privs用戶具有的角色信息
   dba_audit_trail審計跟蹤記錄信息
   dba_stmt_audit_opts審計設置信息
   dba_audit_object 對象審計結果信息
   dba_audit_session會話審計結果信息
   dba_indexes用戶模式的索引信息
user_開頭
   user_objects  用戶對象信息
   user_source 數據庫用戶的所有資源對象信息
   user_segments  用戶的表段信息
   user_tables   用戶的表對象信息
   user_tab_columns  用戶的表列信息
   user_constraints  用戶的對象約束信息
   user_sys_privs  當前用戶的系統權限信息
   user_tab_privs  當前用戶的對象權限信息
   user_col_privs  當前用戶的表列權限信息
   user_role_privs 當前用戶的角色權限信息
   user_indexes  用戶的索引信息
   user_ind_columns用戶的索引對應的表列信息
   user_cons_columns  用戶的約束對應的表列信息
   user_clusters  用戶的所有簇信息
   user_clu_columns 用戶的簇所包含的內容信息
   user_cluster_hash_expressions   散列簇的信息
v$開頭
   v$database   數據庫信息
   v$datafile  數據文件信息
   v$controlfile控制文件信息
   v$logfile  重做日志信息
   v$instance  數據庫實例信息
   v$log  日志組信息
   v$loghist 日志歷史信息
   v$sga  數據庫SGA信息
   v$parameter 初始化參數信息
   v$process  數據庫服務器進程信息
   v$bgprocess  數據庫后台進程信息
   v$controlfile_record_section  控制文件記載的各部分信息
   v$thread  線程信息
   v$datafile_header  數據文件頭所記載的信息
   v$archived_log歸檔日志信息
   v$archive_dest  歸檔日志的設置信息
   v$logmnr_contents  歸檔日志分析的DML DDL結果信息
   v$logmnr_dictionary  日志分析的字典文件信息
   v$logmnr_logs  日志分析的日志列表信息
   v$tablespace  表空間信息
   v$tempfile  臨時文件信息
   v$filestat  數據文件的I/O統計信息
   v$undostat  Undo數據信息
   v$rollname  在線回滾段信息
   v$session  會話信息
   v$transaction 事務信息
   v$rollstat   回滾段統計信息
   v$pwfile_users  特權用戶信息
   v$sqlarea    當前查詢過的sql語句訪問過的資源及相關的信息
   v$sql         與v$sqlarea基本相同的相關信息
   v$sysstat   數據庫系統狀態信息
all_開頭
   all_users  數據庫所有用戶的信息
   all_objects  數據庫所有的對象的信息
   all_def_audit_opts  所有默認的審計設置信息
   all_tables  所有的表對象信息
   all_indexes所有的數據庫對象索引的信息
session_開頭
   session_roles   會話的角色信息
   session_privs   會話的權限信息
index_開頭
   index_stats  索引的設置和存儲信息
偽表
   dual  系統偽列表信息

 

 

1、sysobjects
  系統對象表。 保存當前數據庫的對象,如約束、默認值、日志、規則、存儲過程等
  sysobjects 重要字段解釋:
  sysObjects (
  Name sysname, ——object 名稱
  id int, ——object id
  xtype char(2), —— object 類型
  type char(2), —— Object 類型(與xtype 似乎一模一樣? 有點郁悶…)
  uid smallint, —— object 所有者的ID
  …… ——其他的字段不常用到。
  )
  注:需要解釋的是 xtype 和type 是一模一樣的,他的數據為:
  C = CHECK 約束
  D = 默認值或 DEFAULT 約束
  F = FOREIGN KEY 約束
  FN = 標量函數
  IF = 內嵌表函數
  K = PRIMARY KEY 或 UNIQUE 約束
  L = 日志
  P = 存儲過程
  R = 規則
  RF = 復制篩選存儲過程
  S = 系統表
  TF = 表函數
  TR = 觸發器
  U = 用戶表
  V = 視圖
  X = 擴展存儲過程
  該表中包含該數據庫中的所有對象,如有那些表 存儲過程 視圖 等信息
  2、sysColumns 數據庫字段表。 當前數據庫的所有字段都保留在里面。
  重要字段解釋:
  sysColumns (
  name sysname, ——字段名稱
  id int, ——該字段所屬的表的ID
  xtype tinyInt, ——該字段類型,關聯sysTypes表
  length smallint, ——該字段物理存儲長度
  ……
  )
  比如要查詢某一個張表的有那些字段和這些字段的長度
  3、sysUsers
  當前數據庫的系統組,以及用戶。
  sysUsers(
  uid smallint, ——用戶id
  name smallint , ——名稱
  uid varbinary(85) , ——屬於一個登陸
  ……
  )
  對數據庫的用戶進行管理
  4、sysdenpends
  當前數據庫的依賴關系。 比如我要修改某一張的結構時,怕修改后會影響到其它的視圖 函數 存儲過程 ,這是在修改之前可以查詢一下。那些視圖 函數 存儲過程調用了這個表的這樣在修改后就可以修改的視圖 函數 存儲過程,
  一般程序員用到的系統表,基本也就這幾個, 其他的特殊的系統表(主要都在master 或者 tempdb )里面了 .
一個有用的例子:(查詢表的創建者)
SELECT   owner   FROM     DBA_ALL_TABLES   WHERE   table_name=upper('表名');

  

 

Oracle數據庫的系統參數都存儲在數據庫中,可以通過SQLPLUS,以用戶SYSYTEM進行查詢。

  1.幾個重要的表或者視圖如下:

  v$controlfile:控制文件的信息;

  v$datafile:數據文件的信息;

  v$log:日志文件的信息;

  v$process:處理器的信息;

  v$session:會話信息;

  v$transaction:事務信息;

  v$resource:資源信息;

  v$sga:系統全局區的信息。

  上面的視圖名中的‘v$’,只是視圖名字中的字符。類似於上面的視圖或表還有很多,位於:

  $ORACLE_HOME/RDBMS/ADMIN/CATALOG.SQL文件中。

這些視圖或表可以在SQLPLUS中用SELECT語句進行查詢。

  2.數據字典視圖

  表和列

  DBA_TABLES、ALL_TABLES和USER_TABLES顯示了有關數據庫表的一般信息。

  DBA_TAB_COLUMNS、ALL_TAB_COLUMNS和USER_TAB_COLUMNS顯示了每個數據庫表的列的信息。

  注意:DBA_OBJECTS、ALL_OBJECTS和USER_OBJECTS顯示了模式對象的信息,包括表。

  完整性約束

  DBA_CONSTRAINTS、ALL_CONSTRAINTS和USER_CONSTRAINST顯示有關約束的一般信息。

  DBA_CONS_COL

轉的多了,自然也就會了.
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM