我试图在DBEAVER上运行这个DB2查询:
TRUNCATE table departments immediate
但我发现了一个错误:
DB2 SQL Error: SQLCODE=-668, SQLSTATE=57016, SQLERRMC=7;DB2INST1.DEPARTMENTS, DRIVER=4.19.49
(当我在本地的DBEVAER (外部通道)上运行它时,就会发生这种情况,它运行得很好。)
帮助别人?
发布于 2021-12-09 12:24:10
使用sqlerrmc=7的sqlcode -668 (这7是“原因代码”)意味着:
SQL0668N操作不允许使用原因代码“on”。
代码7的原因是:
表处于reorg挂起状态。这可能发生在包含REORG推荐操作的ALTER语句之后。
如果您的userid具有正确的权限,请尝试:
reorg table db2inst1.departments
如果您有命令行访问Db2,或者从jdbc应用程序(如DBeaver call admin_cmd ('reorg table db2inst1.departments')
)访问.
但是,如果您的帐户缺乏权限,或者DB2服务器版本不允许使用语法,那么reorg就会失败,在这种情况下,您必须让DBA为您工作,或者请一个名为db2inst1
的用户来运行reorg。
当reorg完成时没有错误,请重试截断表。
https://stackoverflow.com/questions/70288355
复制相似问题