在 DB2 中删除多个表

Posted

技术标签:

【中文标题】在 DB2 中删除多个表【英文标题】:Delete multiple table in DB2 【发布时间】:2016-03-07 20:57:36 【问题描述】:

如何在 DB2 的单个查询中删除多个表?

【问题讨论】:

【参考方案1】:

删除表 tableName1,tableName2;

【讨论】:

我完全按照您对两个测试表所说的方式进行了尝试,但我遇到了 -104 错误,说我使用了非法令牌。删除表 TEST1,TEST2;【参考方案2】:

如果您的表在层次结构中 - 您可以使用 DROP TABLE HIERARCHY 操作,如果它们不是 - 不幸的是,您不能在单个查询中删除表,您可以单独删除它们。

【讨论】:

【参考方案3】:

我尝试了很多东西,但都没有成功,最终这就是有效的。

db2 "Select 'DROP TABLE ', tabname, ';' from syscat.tables where owner='DB2INST1'" >> filename

这实际上会生成一个名为 filename 的文件,它将对所有表都有 drop table 命令,您必须打开此文件并删除所有不想删除的表并留下您需要的表.再次验证。

使用以下命令运行:

db2 -tvf filename.

【讨论】:

以上是关于在 DB2 中删除多个表的主要内容,如果未能解决你的问题,请参考以下文章

DB2:多个表之间的外键约束

DB2 和 SQL-如何在特定字段中返回最大值,以便每行只显示一条记录;从多个表中提取数据

DB2-获取在多个商店中具有产品的记录

如何在 DB2 的单个更新语句中更新多个列

DB2 表空间类型

db2,删除表数据,表空间不释放