千家信息网

DB2 数据字典详解

发表于:2025-02-02 作者:千家信息网编辑
千家信息网最后更新 2025年02月02日,对于每个数据库,都创建和维护一组系统编目表。这些表包含关于数据库对象(例如表、视图、索引和包 ) 的定义的信息以及关于用户对这些对象的访问类型的安全信息。对于DB2数据库来说,这些表存储在 SYSCA
千家信息网最后更新 2025年02月02日DB2 数据字典详解

对于每个数据库,都创建和维护一组系统编目表。这些表包含关于数据库对象(例如表、视图、索引和包 ) 的定义的信息以及关于用户对这些对象的访问类型的安全信息。

对于DB2数据库来说,这些表存储在 SYSCATSPACE 表空间中,并采用保留的系统模式名:

  • SYSIBMSYSFUNSYSPROC:一组例程,包括函数和存储过程,其中的 SYSIBM 是基本系统编目的模式 ( 不建议直接访问它 ) 。

  • SYSCAT:一组只读的系统编目表视图,记录数据库对象的结构信息。

  • SYSSTAT:一组可更新的编目视图。这些可更新的视图允许更新某些统计信息,从而模拟和测试数据库的性能,或者更新统计信息而不使用 RUNSTATS 实用程序。

  • SYSIBMADM:一组动态性能视图,可以从该组视图中获取数据库的性能运行信息。



SYSIBM.SYSCHECKS : 存放系统中的CHECK约束的信息,系统为每个表的每一个CHECK约束建立一条记录。
SYSIBM.SYSCOLUMNS:表中存放有系统中所有表的数据列的描述信息,系统为DB2里定义的每个表的每一行建立 一条记录。
SYSIBM.SYSDATABASE:系统为每个DATABASE保存一条记录
SYSIBM.SYSFOREIGNKEYS:为每个FOREIGN KEY约束建立一条记录
SYSIBM.SYSINDEXES: 为每个索引建立一条记录。
SYSIBM.SYSKEYS: 系统为每个INDEX的每个键值创建一条记录。
SYSIBM.SYSTABLES:系统为每一个表,视图和别名在该表中创建一行记录。

SYSIBM.SYSPACKSTMT 每个PACKAGE 中的每条SQL语句有一条记录
SYSIBM.SYSPACKAGE 每个PACKAGE有一条记录
SYSIBM.SYSPACKLIST 每个PLAN相关的每个PACKAGE LIST有一条或一条以上记录
SYSIBM.SYSPLAN 每个PLAN有一条记录


联邦对象SYSCAT 编目视图描述
包装器SYSCAT.WRAPPERS

  SYSCAT.WRAPOPTIONS

这两个视图显示被注册的包装器和它们特定的选项
ServersSYSCAT.SERVERS

  SYSCAT.SERVEROPTIONS

这两个视图显示被注册的远程数据源和它们的特定选项
用户映射SYSCAT.USEROPTIONS这个视图显示被注册的一个 DB2 用户用于特定服务器的用户认证。密码设置存储在 encrypted 中
昵称SYSCAT.TABLES

  SYSCAT.TABOPTIONS

  SYSCAT.COLUMNS

  SYSCAT.COLOPTIONS

  SYSCAT.INDEXES

  SYSCAT.INDOPTIONS

  SYSCAT.INDEXCOLUSE

  SYSCAT.KEYCOLUSE

这组视图显示和被注册昵称相关的信息

  在 SYSCAT.TABLES 中,昵称是通过被设为"N"的 TYPE 来标识的。

  SYSCAT.TABOPTIONS 显示关于昵称的特定选项

  SYSCAT.COLOPTIONS 显示关于昵称列的特定选项

  SYSCAT.INDEXCOLUSE 列出参与一个索引的列

  SYSCAT.KEYCOLUSE 存储关于主键的信息

索引规范SYSCAT.INDEXES

  SYSCAT.INDEXCOLUSE

这两个视图显示为昵称创建的索引规范
信息约束SYSCAT.TABCONST

  SYSCAT.CHECKS

  SYSCAT.COLCHECKS

  SYSCAT.CONSTDEP

  SYSCAT.REFERENCES

这组视图显示为昵称定义的信息约束

  SYSCAT.TABCONST 显示每个定义的约束

  SYSCAT.CHECKS 和 SYSCAT.COLCHECKS 显示关于检查约束的信息

  SYSCAT.CONSTDEP 列出约束所依赖的对象

  SYSCAT.REFERENCES 列出参照约束

类型映射SYSCAT.TYPEMAPPINGS这个视图显示在昵称注册和远程表创建中使用的用户定义类型映射。默认的内置类型映射不存储在这个编目视图中
函数模板SYSCAT.FUNCTIONS

  SYSCAT.ROUTINES

这两个视图显示被注册的用户定义函数

  在 V8 中,SYSCAT.ROUTINES 取代了 SYSCAT.FUNCTIONS(SYSCAT.FUNCTIONS 仍然存在,但是文档中没有说明)

函数映射SYSCAT.FUNCMAPPINGS

  SYSCAT.FUNCMAPOPTIONS

  SYSCAT.FUNCMAPPARMOPTIONS

这些视图显示用于将一个本地函数映射为远程函数的用户定义函数映射
Passthru 权限SYSCAT.PASSTHRUAUTH这个视图显示允许用户使用 PASSTHRU 查询特定服务器的授权


0