当前位置: 代码迷 >> DB2 >> 在QC中施行truncate 报错
  详细解决方案

在QC中施行truncate 报错

热度:3789   发布时间:2013-02-26 00:00:00.0
在QC中执行truncate 报错

如图,怎么解决

------解决方案--------------------------------------------------------
而DB2不支持truncate语句,但提供另外二种方法来解决上面的问题。
(1) 在建表时加选项not logged initially ,当清空表时通过alter table [name] activate not logged initially with empty table
(2)首先在操作系统上建一个空文件empty.del,接着通过import命令import from empty.del of del replace into [table_name]来清空表中的数据并重组表空间。
方法(2)举个例子如下:

在E盘下新建一个空文件empty.del,然后执行下面语句,便会不记日志删除表table(PRODDTA.F4101Z1)

import from E:\empty.del of del replace into PRODDTA.F4101Z1
------解决方案--------------------------------------------------------
而DB2不支持truncate语句,但提供另外二种方法来解决上面的问题。
(1) 在建表时加选项not logged initially ,当清空表时通过alter table [name] activate not logged initially with empty table
(2)首先在操作系统上建一个空文件empty.del,接着通过import命令import from empty.del of del replace into [table_name]来清空表中的数据并重组表空间。
方法(2)举个例子如下:

在E盘下新建一个空文件empty.del,然后执行下面语句,便会不记日志删除表table(PRODDTA.F4101Z1)

import from E:\empty.del of del replace into PRODDTA.F4101Z1
------解决方案--------------------------------------------------------
一般采用第一种方法alter table 模式名.表名 activate not logged initially with empty table
------解决方案--------------------------------------------------------
db2 load /dev/null of del replace into table