DB2 SYSINSTALLOBJECTS 存储过程是为了DB2的某些工具生成相关对象用的。它在SYCPROC schema下,参数定义形式:
SYSINSTALLOBJECTS (
tool_name VARCHAR,
action CHAR,
table_space_name VARCHAR(128),
schema_name VARCHAR(128)
)
tool_name 为要操作的工具的名称,有一下几个值:
- 'AM' 为创建活动监视器对象
- 'DB2AC' 为DB2健康监视器创建对象
- 'STMG_DBSIZE_INFO' 为存储管理创建对象
- 'OPT_PROFILES' 为创建数据库优化参数存储表格
- 'POLICY' 为相关POLICY
action 为操作的类型, 有 'C', 'D','V' - (Create, Drop, Verify)
table_space_name, 存放待创建对象的表空间。 如果该参数未指定或空字符,当工具名是'AM'时,默认表空间将会被使用,除此之外,SYSTOOLSPACE将会被使用,如果它不存在则创建。
schema_name, 保留参数,不使用。
项目中遇到的问题是SYSTOOLS.POLICY表不存在,但是其上的四个Trigger却存在,且状态为X。 因此要删除不一致的状态,方法有两个:
1. 直接DROP trigger。 需要用SYSIBM或SYSCTRL的权限帐号执行
DB2 DROP TRIGGER SYSTOOLS.POLICY_IR
......
2. 使用上述存储过程回复POLICY数据再删除
//重新创建
CALL SYSPROC.SYSINSTALLOBJECTS('POLICY', 'C', CAST (NULL AS VARCHAR 128)), CAST (NULL AS VARCHAR(128)))
//删除
CALL SYSPROC.SYSINSTALLOBJECTS('POLICY', 'D', CAST (NULL AS VARCHAR(128)), CAST (NULL AS VARCHAR(128)))
虽然不一致的状态得到了消除,但是对于POLICY表的使用场景和时机,却没有弄明白,从表中的内容看似乎是一些维护的POLICY定义。有清楚的高手,帮我解惑。
分享到:
相关推荐
db2 存储过程 db2 存储过程 db2 存储过程
db2存储过程db2存储过程db2存储过程db2存储过程db2存储过程db2存储过程db2存储过程db2存储过程db2存储过程
DB2 SQL存储过程语法官方权威指南,介绍DB2中存储过程的基本语法
DB2 存储过程 SQL DB2 SQL存储过程基础 SQL
DB2数据库存储过程入门 首先,打开DB2开发中心,新建项目后,连接上指定的数据库。右键点击新建存储过程,可以直接新建,也可以使用向导建立。建好后就如下所视:
DB2数据库存储过程小结,详细解释DB2存储过程。
DB2 sql 存储过程基础,希望有更多的DB2存储过程资料共享
DB2存储过程基础文档、基本变量定义、基本语法描述。适合初学者。
DB2 存储过程 教程DB2 存储过程 教程DB2 存储过程 教程
银行db2存储过程开发内部专用指导手册,难得的内部规范材料
sql server 2000 分页存储过程,DB2分页存储过程,db2自动生成流水号存储过程
DB2存储过程的入门实例文档,介绍DB2存储过程的基本知识
java 调用db2存储过程,将db2数据库的存储过程描述,讲的比较清楚。
DB2存储过程语法大全 存储过程及其类型 动态SQL语句
DB2存储过程精简教程,DB2存储过程精简教程,DB2存储过程精简教程
db2look导出存储过程脚本,
DB2存储过程介绍 存储过程定义 指针 动态SQL语句
db2数据库存储过程
db2存储过程、触发器等指南
db2存储过程基础