微波EDA网,见证研发工程师的成长!
首页 > 通信和网络 > 通信网络业界新闻 > 使用脚本加速 DB2 存储过程开发

使用脚本加速 DB2 存储过程开发

时间:06-16 来源:IT专家网 点击:

SQL 语句获得我们需要的信息。下面我们先来学习一下 DB2 系统表。

  在 DB2 数据库被创建的时候,DB2 会创建一些系统表。这些系统表中记录了所有数据库对象的信息,表或视图的列的数据类型,约束的定义,对象的权限和对象之间的依赖关系等。这些系统表的模式为 SYSIBM,其表名以 SYS 作为前缀。例如: SYSTABLES、SYSVIEWS 等等。DB2 为这些系统表建立了相对应的只读视图。这些视图的模式是 SYSCAT,它们的内容是其相对应的系统表的全部或者部分内容。这些视图的名字没有 SYS 的前缀。例如:SYSCAT.TABLES 是 SYSIBM.SYSTABLES 的视图。

  我们可以通过 LIST TABLES FOR SYSTEM 或 LIST TABLES FOR SCHEMA schemaname 命令查看所有的系统表和相关的视图信息。下面我们会介绍一些本文用到的系统表和视图。

  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)的定义。我们可以认为该视图包含了数据库中程序的定义。

……


Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top