informix报-439错误是怎么回事啊?
批量交易,更新游标时报-439错误,请问怎么回事?如何解决?应该不是程序逻辑问题,不然怎么会批量更新到中途时出错了呢?
-439 Database server is currently processing an SQL task.
You attempted to call an SQL routine or attempted to execute an SQL
statement within a signal handling function/routine or a callback
function/procedure. Use only the sqldone() and sqlbreak() library
functions inside your IBM Informix ESQL/C callback function. Use only the
ECO-SQD and ECO-SQB library routines inside your ESQL/COBOL callback
procedure. In addition, if you want to unregister your callback
function in IBM Informix ESQL/C, you can invoke the sqlbreakcallback()
callback registration function within your callback procedure. If you
want to unregister your callback procedure in ESQL/COBOL, you can
invoke the ECO-SQBCB callback registration routine within your callback
procedure. -439 数据库服务器当前正在处理一个 SQL 任务。
你试图在一个信号处理函数/例程或一个回调 函数/例程内调用一个 SQL 程序,或试图执行
一个SQL 语句。只能使用你的 INFORMIX-ESQL/C 回调函数内部的 sqldone() 和 sqlbreak()
函数库函数。只能使用你的 ESQL/COBOL 回调过程内部的ECO-SQD 和 ECO-SQB 函数库程序。
另外,如果你要在INFORMIX-ESQL/C 中不寄存你的回调函数,你可以在你的回调过程中调用
sqlbreakcallback()回调登记函数。如果你要在 ESQL/COBOL 中不寄存你的回调过程,你可
以在你的回调过程中调用 ECO-SQBCB 回调寄存程序。
语法问题.
回复 #2 liaosnet 的帖子
语法有什么问题啊?我现在要更新大约几十万条记录,不过每次更新是个事务,到更新到中途时(大约31万多条时)出错了,报此错误,需要更新的记录总数大约是64万条不到
页:
[1]