db2系统表sysibm和syscat的区别

一、系统表概述

在创建db2数据库的时候,会创建一些系统表,这些表记录了所有数据库的对象(表、视图等),它们都在模式sysibm下面,并且均以sys开头,如systables、sysviews、sysindexes等,同时也为这些表建立了相应的视图,这些视图在模式syscat下面。

官方说法如下,
sysibm 系统数据字典表
syscat 系统视图

简单讲:系统相关数据都放在sysibm表里面,syscat是基于sysibm的一组视图,一般来讲建议访问syscat看相关系统数据。
系统数据是相对于你的应用数据而言的,比如表的定义之类的都在里面,但是你的业务数据都在你自己生成的表里面,当然你也不会用这些个系统schema。

下面通过syscat模式下的视图详细介绍系统对象信息:

视图1 SYSCAT.TABLES

1578020063-c24301e535e6f82

二、db2 查询表、模式、用户和权限

表: select * from syscat.systables where Type = ‘T’
模式: select * from syscat.schema || SELECT * FROM SYSIBM.SYSSCHEMATA
用户: select * from syscat.dbauth  ||
权限: select * from syscat.tabauth

三、db2统计表的数量及每个表的记录数

select tabname,card from syscat.tables where tabschema = ‘schema’

tabname    表名

card          总行数

 

更加详细资料请访问ibm官方网站:https://www.ibm.com/developerworks/cn/data/library/techarticles/dm-0411melnyk/

打赏

觉得本站还不错就打赏一下吧!

支付宝扫一扫打赏

微信扫一扫打赏

本站所有内容均来自于互联网自动采集,如无意侵犯了您的权利,请您发送邮件到admin@chinaetl.com.cn联系管理员删除。
ChinaETL » db2系统表sysibm和syscat的区别