返回首页

gbase数据、南大通用产品文档:GBase8sDBACCNOIGN 环境变量

更新日期:2024年09月11日

使用 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 语句。这些消息还会标识错误原因,以便您能够解决问题。
设置 DBACCNOIGN 时的 LOAD 语句示例
可在执行 LOAD 语句期间设置 DBACCNOIGN 环境变量来保护数据完整性,即使
DB-Access 以菜单方式运行 LOAD 语句也是如此。
假定您从 DB-Access SQL 菜单执行 LOAD 语句。正确装入了 49 行数据,但第 50
行数据包含无效值,
因而导致错误。
如果将 DBACCNOIGN 设置为 1,
那么数据库服务器

GBase 8s SQL 指南:参考
南大通用数据技术股份有限公司 - 146 -

不会将先前的 49 行插入到数据库中。如果未设置 DBACCNOIGN,那么数据库服务器会
插入前 49 行。

功能
该参数用于设定NULL 值。只在format=3 时,该参数有效。
示例
示例1

GBase 8a MPP Cluster 产品手册
4 管理员指南
文档版本953(2022-09-15)
南大通用数据技术股份有限公司
537
--null_value ='\\N'
示例2
-n'\\N'
参数说明
表4- 103 参数说明
参数全称
参数简称
取值范围
默认值
null_value
n
最大15 个字符
\N

服务器管理
GBase 8s 服务器管理由多种管理任务组成。