DBACCNOIGN 环境变量

使用 DBACCNOIGN 环境变量,可以指定在发生指定的错误时 DB-Access 实用程序的行为。

如果在以下某种情况下发生错误,那么 DBACCNOIGN 环境变量会影响 DB-Access 实用程序的行为:
  • 以非菜单方式运行 DB-Access。
  • 仅在 GBase 8s 中,以菜单方式通过 DB-Access 执行 LOAD 命令。
如果在上述任一情况下运行 DB-Access 实用程序时发生错误,请将 DBACCNOIGN 环境变量设置为 1,以回滚未完成的事务。
例如,假定 DB-Access 运行以下 SQL 命令:
DATABASE mystore
BEGIN WORK

INSERT INTO receipts VALUES (cust1, 10)
INSERT INTO receipt VALUES (cust1, 20)
INSERT INTO receipts VALUES (cust1, 30)

   UPDATE customer
      SET balance =
            (SELECT (balance-60)
            FROM customer WHERE custid = 'cust1')
      WHERE custid = 'cust1
COMMIT WORK

此处有一条语句的表名拼写错误:receipt 表不存在。如果未在环境中设置 DBACCNOIGN,那么 DB-Access 会将两条记录插入到 receipts 表中,并更新 customer 表。现在 customer balance 的减少量超过了插入的 receipts 的总和。

但如果将 DBACCNOIGN 设置为 1,那么会打开消息,指示 DB-Access 回滚了所有 INSERT 和 UPDATE 语句。这些消息还会标识错误原因,以便您能够解决问题。