如何在 DB2 中截断表?错误:不是有效的命令行处理器命令



在 DB2 CLP 中运行以下语句(命令窗口)

db2 "截断表 MYSCHEMA。表立即"

DB21034E  The command was processed as an SQL statement because it was not a
valid Command Line Processor command.  During SQL processing it returned:
SQL0969N  There is no message text corresponding to SQL error "-20356" in the
message file on this workstation.  The error was returned from module
"SQLNQBE2" with original tokens "MYSCHEMA.TABLEA".

有些人可以告诉我我做错了什么或我错过了什么吗?我试图简单地从单个表中截断,并收到以下错误消息。不知道我做错了什么。我已经尝试过带/不带引号,带/不带模式,带/不带立即。我也尝试过在命令编辑器中(删除 db2 和引号)但仍然无法正常工作。 我正在使用:DB2/AIX64 9.7.9此外,我有删除权限,因为我可以删除记录,但我想截断。

提前感谢!

您使用的 DB2 客户机的版本似乎与服务器的版本不匹配,这就是您看不到 SQLCODE -20356 的实际错误消息的原因。如果可以的话,你会看到这个:

表我的架构。无法截断 TABLEA,因为删除触发器 表存在,或者表是引用中的父级 约束。

像往常一样,可以在精细手册中找到进一步的解释和建议的操作。

ALTER TABLE MYSCHEMA.TABLEA ACTIVATE NOT LOGGED INITIALLY WITH EMPTY TABLE

import from /dev/null of del replace into MYSCHEMA.TABLEA

我最近也遇到了这个问题。就我而言,我必须在TRUNCATE之前做一个提交工作。这解决了我的问题。请尝试告诉我们这是否有帮助。

相关内容

  • 没有找到相关文章

最新更新