如何在IBM DB2中实现存在则删除指定Wrapper(MY_WRAPPER)的脚本?
问题:DB2中实现Wrapper存在则删除、不存在不报错
我刚接触PL/SQL(针对IDM DB2),想要检查名为MY_WRAPPER的Wrapper是否存在,若存在则将其删除。根据文档,删除Wrapper的语句为DROP WRAPPER MY_WRAPPER;,但当该Wrapper不存在时,执行语句会返回错误:
[Code: -204, SQL State: 42704] "MY_WRAPPER" is an undefined name.. SQLCODE=-204, SQLSTATE=42704, ...
请问如何编写脚本实现“存在则删除,不存在时不返回错误”的逻辑?
解决方案
使用以下PL/SQL脚本即可实现需求:
BEGIN IF EXISTS (SELECT * FROM SYSCAT.WRAPPERS WHERE WRAPNAME = 'MY_WRAPPER') THEN EXECUTE IMMEDIATE 'DROP WRAPPER MY_WRAPPER'; END IF; END
内容的提问来源于stack exchange,提问作者fr0zt
相关产品推荐
相关产品推荐

