IT分销/经销数据库序列

db2中怎么判断触发器、序列、索引是否已存在?

如题,想初始化数据库时 创建触发器,如果触发器已存在了就drop掉,不存在就create.

序列和索引也一样存在就drop,不存在就create.

这种判断应该 在哪完成呢?
如果用函数写方法能完成这事儿么?该怎么做才好呢?
参与7

6同行回答

dikarsdikars数据库管理员DGLCAMEL
可以考虑先create,如果错误则drop,再create显示全部
可以考虑先create,如果错误则drop,再create收起
互联网服务 · 2010-10-22
浏览1188
mdkiimdkii软件开发工程师bocn
可以考虑先create,如果错误则drop,再create显示全部
可以考虑先create,如果错误则drop,再create收起
银行 · 2010-10-22
浏览1157
limin19821limin19821系统工程师乐酷天
先drop掉,再创建,不做判断即可。 drop返回的错误屏蔽掉就可以了,例如屏蔽掉SQL0204N "xxxxx" 是一个未定义的名称 这种错误, 遇到这种不rollback即可。显示全部
先drop掉,再创建,不做判断即可。 drop返回的错误屏蔽掉就可以了,例如屏蔽掉SQL0204N
"xxxxx" 是一个未定义的名称 这种错误, 遇到这种不rollback即可。收起
IT分销/经销 · 2010-10-21
浏览1163
hua812hua812数据库管理员DB2
以前我们是将判断条件写在shell里面,同时在shell里调用创建语句。显示全部
以前我们是将判断条件写在shell里面,同时在shell里调用创建语句。收起
金融其它 · 2010-10-21
浏览1241
cedarbirdcedarbird工程师CDI
9.7以后增加了OR REPLACE的功能.对trigger, sequence 可以使用.index没办法显示全部
9.7以后增加了
OR REPLACE
的功能.
对trigger, sequence 可以使用.
index没办法收起
IT分销/经销 · 2010-10-21
浏览1146
haoqingyunhaoqingyun数据库运维工程师CMBC
可以查catalog表,SYSCAT.TRIGGERS, SYSCAT.SEQUENCES, SYSCAT.INDEXES,记录了所有的触发器、序列、索引。对于索引还可以用db2 describe indexes for table tablename来查看。显示全部
可以查catalog表,SYSCAT.TRIGGERS, SYSCAT.SEQUENCES, SYSCAT.INDEXES,记录了所有的触发器、序列、索引。

对于索引还可以用db2 describe indexes for table tablename来查看。收起
银行 · 2010-10-21
浏览1204

提问者

IBMDB2DBA
系统工程师IBM
擅长领域: 数据库

相关问题

相关资料

相关文章

问题状态

  • 发布时间:2010-10-21
  • 关注会员:1 人
  • 问题浏览:7388
  • 最近回答:2010-10-22
  • X社区推广