返回首页

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

更新日期:2024年09月11日

功能说明
WHILE 是GBase 8a MPP Cluster 中另一种常见的循环结构,
在满足执行条件时该
结构会重复执行执行体。
说明

WHILE 结构在逻辑上与REPEAT 一致,唯一不同的是REPEAT 结构中的
执行体至少会执行一次,
而WHILE 结构中的执行体则可能一次也不执行。
语法格式
[begin_label:] WHILE search_condition DO
statement_list
END WHILE [end_label]
表5- 180 参数说明

GBase 8a MPP Cluster 产品手册
5 数据库管理指南
文档版本953(2022-04-10)
南大通用数据技术股份有限公司
1370
参数名称


statement_list
要执行的SQL 语句集合,
可以是一个语句也可以是多个语句。
search_condition
WHILE 语句结束条件,如果为真,WHILE 语句将结束
示例
示例1:WHILE...END WHILE
gbase> DELIMITER //
gbase> DROP PROCEDURE IF EXISTS doWhile //
Query OK, 0 rows affected
gbase> CREATE PROCEDURE doWhile(p1 INT)
BEGIN
SET @x = 0;
WHILE
@x < p1 DO
SET @x = @x + 1; END WHILE;
END //
Query OK, 0 rows affected
gbase> DELIMITER ;
gbase> CALL dowhile(1000);
Query OK, 0 rows affected
gbase> SELECT @x;
+------+
| @x
|
+------+
| 1000 |
+------+
1 row in set

功能
字符串变量,
用于指定Kerberos 认证中安全主体keytab 文件名。
当不指定这个参
数值或指定参数值为空字符串时,
将使用gbase_hdfs_principal 推定keytab 文件名,
推定规则参见gbase_hdfs_principal 说明。
参数值应为以双引号"或单引号'包围的字符串。例如以下方式为合法参数值:
gbase_hdfs_keytab=’$GBASE_BASE/config/gbase.keytab’
gbase_hdfs_keytab=”$GBASE_BASE/config/gbase.keytab”
表6- 82 参数值范围说明表
默认值
最小值
最大值
NULL



GBase 8a MPP Cluster 产品手册
6 附录
文档版本953(2022-09-15)
南大通用数据技术股份有限公司
1591

如果客户机应用程序和数据库服务器共享 sqlhosts 信息,那么可以在 hostname 字段中
同时指定通配符和主机名或 IP 地址(例如,*texas1 或 *123.45.67.81)。 客户机应用程

GBase 8s 管理员指南
南大通用数据技术股份有限公司
- 53 -
序忽略通配符并使用主机名(或 IP 地址)来建立连接,并且数据库服务器使用通配符从
任何 IP 地址接受连接。
通配符格式允许数据库服务器的侦听线程等待每块有效的网络接口卡上使用相同服务端口
号的客户机连接。但是,等待多个 IP 地址的连接可能比等待特定主机名或 IP 地址的连
接所需处理器时间更长。
下图显示具有两块网络接口卡的计算机 texas 上的数据库服务器。这两个客户机站点使用
不同的网卡与数据库服务器通信。
图: 使用多块网络接口卡


以下示例显示了 texas_srvr 数据库服务器可能的 sqlhosts 连接信息。
#dbservername nettype hostname servicename options
texas_srvr ontlitcp *texas1 pd1_on
#dbservername nettype hostname servicename options
texas_srvr ontlitcp *123.45.67.81 pd1_on
#dbservername nettype hostname servicename options
texas_srvr ontlitcp *texas2 pd1_on
#dbservername nettype hostname servicename options
texas_srvr ontlitcp *123.45.67.82 pd1_on
#dbservername nettype hostname servicename options

GBase 8s 管理员指南
南大通用数据技术股份有限公司
- 54 -
texas_srvr ontlitcp * pd1_on
如果连接信息与前面任意一行的内容一致,那么 texas_srvr 数据库服务器就可以接受来
自其中任意一块网卡的客户机连接。数据库服务器将在 hostname 字段中查找通配符并忽
略显式的主机名。
提示: 为了清晰简便地维护,在主机名字段中使用通配符时,请包含主机名(即,使用
*host,而不是 *)。
客户机应用程序使用的连接信息必须包含显式的主机名或 IP 地址。iowa 上的客户机应
用程序可以使用下列主机名中的任何一个:texas1、*texas1、123.45.67.81 或
*123.45.67.81。如果 hostname 字段中有通配符 (*),客户机应用程序会将其忽略。
kansas 上的客户机应用程序可以使用下列主机名中的任何一个:texas2、*texas2、