我有一个严重的问题..我有更新的存储程序,几百万条记录。这一切都发生在游标中。 我遇到了一些问题,无论我到目前为止做了什么,它都会因事务日志完全错误而失败 SQL0964C数据库的事务日志已满。 SQLSTATE = 57011
在过去的几天里,我一个接一个地对db配置进行了以下更改,希望日志文件将停止填充 我已经设置了以下内容
LOGRETAIN = NO
LOGARCHMETH1 = OFF
LOGILESIZE=20000
LOGPRIMARY=50
LOGSECONDARY=200
直到今天早上(刚刚更改了LOGARCHMETH1 = OFF并且sp正在运行)我没有运气。现在我只是不想看到这个错误,我希望这个停止,以便我可以继续我的测试。我可以稍后处理这些性能问题。 有些灵魂可以解释一下,我强迫db2不使用我已经尝试过的日志吗? DB2版本是8.2.4
答案 0 :(得分:1)
好的找到了答案,因为我不熟悉DB2语法,显然我使用游标的方式导致了“无限循环”(?) 无论如何我改变了我的代码以遵循这种格式
FOR v AS cur1 CURSOR FOR
SELECT firstnme, midinit, lastname FROM employee
DO
SET fullname = v.lastname || ',' || v.firstnme
||' ' || v.midinit;
INSERT INTO tnames VALUES (fullname);
END FOR;
并且所有工作完美......: - )
希望它能帮助像我这样的其他新手使用db2语法