返回首页

gbase数据、南大通用产品文档:GBase8a

更新日期:2024年09月11日

GBA-01BR-0027
错误码
错误标识
错误显示信息
GBA-01BR-0027

create dir %s error
错误出现原因
创建文件夹失败
分析与建议
检查文件系统权限,状态

与游标变量相关的查询可以引用他的作用域中的任意变量。当使用OPEN FOR打开游
标变量时,PL/SQL会计算查询中的任意变量来标识结果集,对于变量的后续修改,不会改
变结果集。若要更改结果集,必须更改变量的值,然后再次为同一查询打开游标变量。
CREATE OR REPLACE PROCEDURE P_5_25 AS
sal employees.salary%TYPE;
sal_multiple employees.salary%TYPE;
factor INTEGER := 2;
cv SYS_REFCURSOR;
BEGIN
OPEN cv FOR 'SELECT salary, salary*? FROM employees WHERE job_id LIKE ''AD_PRES''' using factor ;
LOOP
FETCH cv INTO sal, sal_multiple;
EXIT WHEN cv%NOTFOUND;
DBMS_OUTPUT.PUT_LINE('factor = ' || factor);
DBMS_OUTPUT.PUT_LINE('sal = ' || sal);
DBMS_OUTPUT.PUT_LINE('sal_multiple = ' || sal_multiple);
factor := factor + 1; -- Does not affect sal_multiple
END LOOP;
CLOSE cv;
END;


GBase 8s PL/SQL手册
南大通用数据技术股份有限公司
- 115 -

--Result:
--factor = 2
--sal = 4400
--sal_multiple = 8800
--factor = 3
--sal = 24000
--sal_multiple = 48000
--factor = 4
--sal = 17000
--sal_multiple = 34000
--factor = 5
--sal = 17000
--sal_multiple = 34000

CREATE OR REPLACE PROCEDURE P_6_26 AS
sal employees.salary%TYPE;
sal_multiple employees.salary%TYPE;
factor INTEGER := 2;
cv SYS_REFCURSOR;
BEGIN
DBMS_OUTPUT.PUT_LINE('factor = ' || factor);
OPEN cv FOR 'SELECT salary, salary*? FROM employees WHERE job_id LIKE ''AD_PRES''' using factor;
LOOP
FETCH cv INTO sal, sal_multiple;
EXIT WHEN cv%NOTFOUND;
DBMS_OUTPUT.PUT_LINE('sal = ' || sal);
DBMS_OUTPUT.PUT_LINE('sal_multiple = ' || sal_multiple);
END LOOP;

factor := factor + 1;

DBMS_OUTPUT.PUT_LINE('factor = ' || factor);

OPEN cv FOR 'SELECT salary, salary*? FROM employees WHERE job_id LIKE ''AD_PRES''' using factor;
LOOP
FETCH cv INTO sal, sal_multiple;
EXIT WHEN cv%NOTFOUND;
DBMS_OUTPUT.PUT_LINE('sal = ' || sal);
DBMS_OUTPUT.PUT_LINE('sal_multiple = ' || sal_multiple);
END LOOP;
CLOSE cv;
END;

GBase 8s PL/SQL手册
南大通用数据技术股份有限公司
- 116 -


--Result:
--factor = 2
--sal = 4400
--sal_multiple = 8800
--sal = 24000
--sal_multiple = 48000
--sal = 17000
--sal_multiple = 34000
--sal = 17000
--sal_multiple = 34000
--factor = 3
--sal = 4400
--sal_multiple = 13200
--sal = 24000
--sal_multiple = 72000
--sal = 17000
--sal_multiple = 51000
--sal = 17000
--sal_multiple = 51000

使用 DBSERVERALIASES 配置参数来指定数据库服务器的别名或唯一别名列表。
DBSERVERALIASES 配置参数定义的每一个别名可按照在 sqlhosts 信息中指定的条目,
用于不同的连接。
onconfig.std 值
未设置。未定义别名。

以逗号分隔的 1 至 32 个别名。每个别名可可选地后跟一个减号和一个 1 - 50 的整数,
指定用于 onimcsoc 或 onsoctcp 协议的多监听器线程数。 例如,下列两个别名每个有四
个监听器线程:alias_a-4,alias_b-4。其他协议忽略监听器线程数。
别名的最大长度是 128 字节。忽略超过 32 的附加别名。DBSERVERALIASES 条目的最
大长度是 512 字节。您可在 onconfig 文件中包括多个 DBSERVERALIASES 配置参数
行。
别名必须以字母开头并可包含任何可打印字符,除了下列:
 大写字母
 域定义符(空格或 tab)
 换行符
 注释符(#)
 连字符或减号(= ASCII 45)
 @ 字符
 空格
分隔符
用逗号分隔条目。不包括空格。
生效
编辑 onconfig 文件并重启数据库服务器,而且更新每个数据库服务器的 sqlhosts 信息之
后。
用法

GBase 8s 管理员参考
南大通用数据技术股份有限公司 - 55 -
您可使用 DBSERVERALIASES 配置参数来指定 Secure Sockets Layer (SSL) 和 非 SSL
连接协议的别名。
如果 GBase 8s 支持一种以上通信协议(例如,IPC 机制和 TCP 网络协议),则您必须在
sqlhosts 信息中用一个条目描述数据库服务器的每一个有效连接。 例如,假定您用
DBSERVERNAME 配置参数设置定义了一个名为 sanfrancisco 的服务器,且您设置 SSL
连接的 menlo 的 DBSERVERALIASES 值。
例如,
假定您有一个用 DBSERVERNAME 配
置参数设置定义的名为 sanfrancisco 的服务器, 且您给不同的 menlo 设置
DBSERVERALIASES 值。
您必须在 sqlhosts 信息中为 sanfrancisco 和 menlo 服务器都指
定信息。 类似地,如果数据库服务器需要支持标准 GBase 8s 协议和分布式关系数据库体
系结构(DRDA)协议,则给 DRDA 数据库指定一个别名,并在 sqlhosts 文件中添加这
个别名的一个条目。
对于 DBSERVERALIASES 配置参数中罗列的每一个别名,数据库服务器启动一个附加的
监听器线程。如果您有许多客户端应用程序连接到数据库服务器,则您可在几个监听器线
程之间分发连接请求加速连接次数。利用替代连接,客户端应用程序编程连接到一个数据
库服务器别名而不是数据库服务器名。
如果您使用多于一个连接协议的 GBase 8s MaxConnect ,
则为 DBSERVERALIASES 配置
参数指定附加的数据库服务器别名。客户端上 GBASEDBTSERVER 环境变量的值必须或
者与 DBSERVERNAME 配置参数的值相配,
或者与 DBSERVERALIASES 配置参数值之
一相配。