DB2 中的各種系統表介紹


SYSCAT.TABLES:數據庫中對象的信息,包括 table,view,nickname 和 alias 的一些定義。詳細說明見表 1。
表 1. SYSCAT.TABLES 視圖的說明
列名 數據類型 描述
TABSCHEMA VARCHAR(128) 記錄 schema 的名字
TABNAME VARCHAR(128) 記錄數據庫對象的名稱。包括表、視圖、別名等
TYPE CHAR(1) 表示該數據庫對象是表,視圖還是別名 ('T'表示table; 'V'表示 view; 'N' 表示nickname; 'A' 表示 alias。)
COLCOUNT SMALLINT 表或視圖中列的個數
……    
 

SYSCAT.VIEWS:視圖的定義信息。詳細說明見表 2。

表 2. SYSCAT.VIEWS 視圖的說明
列名 數據類型 描述
VIEWSCHEMA VARCHAR(128) 視圖的 Schema
VIEWNAME VARCHAR(128) 視圖名稱
READONLY CHAR(1) 視圖是否只讀:
  • Y = 視圖是只讀
  • N = 視圖不是只讀
VALID CHAR(1) 視圖狀態是否合法:
  • Y = 視圖狀態合法(valid)
  • X = 視圖狀態不合法(invalid)
TEXT CLOB (64K) 視圖的源程序(DDL)
……    
 

SYSCAT.ROUTINES:DB2 UDF,系統方法(system-generated method),用戶定義方法(user-defined method)和存儲過程(SP)的定義。我們可以認為該視圖包含了數據庫中程序的定義。見表 3。

表 3. SYSCAT.ROUTINES 視圖的說明
列名 數據類型 描述
ROUTINESCHEMA VARCHAR(128) 記錄程序的 schema
ROUTINENAME VARCHAR(128) 記錄程序名稱
ROUTINETYPE CHAR(1) 記錄程序類型:
  • F = Function
  • M = Method
  • P = Procedure
SPECIFICNAME VARCHAR(128) 程序實例的名稱(可以指定,也可以由系統自動生成)
VALID CHAR(1) 如果存儲過程依賴的一些對象被刪除或修改了,該存儲過程必須要被重建
  • Y = SQL 存儲過程是合法的
  • N = SQL 存儲過程是非法的
  • X = SQL 存儲過程是不可操作的
TEXT CLOB(1M) 如果是用 SQL 編寫的程序,該字段記錄了其創建的 DDL
   
 

表 4 所示的 SYSCAT.ROUTINEDEP 說明了 DB2 UDF與其他對象的依賴關系。

表 4. SYSCAT.ROUTINEDEP 視圖的說明
列名 數據類型 描述
ROUTINESCHEMA VARCHAR(128) 依賴於其他對象的 DB2 程序的 schema
ROUTINENAME VARCHAR(128) 依賴於其他對象的 DB2 程序的名稱
BTYPE CHAR(1) 依賴對象的類型:
  • A = Alias
  • S = Materialized query table
  • T = Table
  • V = View
BSCHEMA VARCHAR(128) 被依賴的對象的 schema
BNAME VARCHAR(128) 被依賴的對象的名稱
 

表 5 所示的 SYSCAT.COLUMNS 說明了表或視圖的每一個列的信息。

表 5. SYSCAT.COLUMNS 視圖的說明
列名 數據類型 描述
TABSCHEMA VARCHAR(128) 表或視圖的 Schema
TABNAME VARCHAR(128) 表或視圖名稱
COLNAME VARCHAR(128) 列名稱
KEYSEQ SMALLINT 記錄列在其表的主鍵的位置
 

表 6 所示的 SYSCAT.PACKAGEDEP 說明了 Pachage 與其他數據庫對象的依賴關系。

表 6. SYSCAT.PACKAGEDEP 視圖的說明
列名 數據類型 描述
PKGSCHEMA VARCHAR(128) Package 的 schema
PKGNAME VARCHAR(18) Package 的名稱
BTYPE CHAR(1) 依賴對象的類型:
  • A = Alias
  • B = Trigger
  • I = Index
  • S = Materialized query table
  • T = Table
  • V = View
BSCHEMA VARCHAR(128) 被依賴的對象的 schema
BNAME VARCHAR(128) 被依賴的對象的名稱
 

表 7 所示的 SYSCAT.TABDEP 說明了視圖或者固化視圖和 DB2 對象之間的依賴關系。

表 7. SYSCAT.TABDEP 視圖的說明
列名 數據類型 描述
TABSCHEMA VARCHAR(128) 視圖或者固化視圖的 schema
TABNAME VARCHAR(128) 視圖或者固化視圖的名稱
DTYPE CHAR(1) 視圖的類型:
  • S = Materialized query table
  • V = View (untyped)
  • W = Typed view
BTYPE CHAR(1) 依賴對象的類型:
  • A = Alias
  • S = Materialized query table
  • T = Table
  • V = View
BSCHEMA VARCHAR(128) 被依賴的對象的 schema
BNAME VARCHAR(128) 被依賴的對象的名稱
 
 


免責聲明!

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



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