为什么不这项工作在IBM Data Studio中(Eclipse中) :
IF EXISTS (SELECT 1 FROM SYSIBM.SYSVIEWS WHERE NAME = 'MYVIEW' AND CREATOR = 'MYSCHEMA') THEN
DROP VIEW MYSCHEMA.MYVIEW;
END IF;
我有一种感觉它与语句结束做(;),但我无法找到一个可行的语法。
在另一个类似的问题, 如何在DB2 9.1中放置前检查程序/视图/表存在与否? 建议他们必须创建一个进程,但是这不是我们的解决方案。
从IBM的书: 入门使用Data Studio的DB2 :
声明终止:您可以通过结束与语句终止符每个语句开发一个SQL编辑器窗口中的多个SQL语句。 默认的终结是一个分号。 但是你可以通过右键单击编辑器并选择上下文菜单操作设置语句终止的内容改变到另一个字符。
编辑:
OK,这个问题似乎是语法。 许多人似乎有同样的问题。 例如看到DROP TABLE,VIEW,...只有IF EXISTS 。
在这个例子中有提到的两个解决方案。
- 使用
Begin atomic
- 使用过程
db2perf_quiet_drop
有关详情阅读喜欢的页面。
第二个编辑:
我只是找到了一个很好的解释Begin ataomic
在IBM的网页。 见高级SQL脚本PL来自IBM。 例2是你在找什么。