返回首页

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

更新日期:2024年09月11日



sword GCIStringAssignText (
GCIEnv *envhp,
GCIError *errhp,
const GCIText *rhs,
ub4 rhs_len,
GCIString **lhs
);


GBase 8s GCI 接口使用指南

南大通用数据技术股份有限公司 113
将源文本字符串分配给目标字符串。 参数
输入
/输出


envhp
输入/输出
环境句柄
errhp
输入/输出
错误信息句柄,该接口调用失败时,错误信息会存在该句柄上
rhs
输入
分配的右侧(源)
rhs_len
输入
rhs 字符串的长度(以字节为单位)
lhs
输入/输出
分配的左侧(目标)


如果执行成功,返回 GCI_SUCCESS,否则返回 GCI_ERROR。

操作步骤
步骤1:
将gcChangeInfo.xml 文件复制为gcRm_vc1.xml 文件,
并修改其中对应nodeip
内容为待修改节点IP:

GBase 8a MPP Cluster 产品手册
4 管理员指南
文档版本953(2022-09-15)
南大通用数据技术股份有限公司
276
$ cp gcChangeInfo.xml gcRm_vc1.xml
$ vi gcRm_vc1.xml
$ cat gcRm_vc1.xml






步骤2:将缩容节点从对应vc 中删除,变为freenode。
$ gcadmin rmnodes gcRm_vc1.xml vc1
gcadmin remove nodes ...
flush statemachine success
gcadmin rmnodes from vc [vc1] success
$ gcadmin
CLUSTER STATE:
ACTIVE
================================================================
|
GBASE COORDINATOR CLUSTER INFORMATION
|
================================================================
|
NodeName
|
IpAddress
| gcware | gcluster | DataState |
----------------------------------------------------------------
| coordinator1 | 172.168.83.11 |
OPEN
|
OPEN
|
0
|
----------------------------------------------------------------
| coordinator2 | 172.168.83.12 |
OPEN
|
OPEN
|
0
|
----------------------------------------------------------------
| coordinator3 | 172.168.83.13 |
OPEN
|
OPEN
|
0
|
----------------------------------------------------------------
| coordinator4 | 172.168.83.15 |
OPEN
|
OPEN
|
0
|
----------------------------------------------------------------
=============================================
|
GBASE VIRTUAL CLUSTER INFORMATION
|
=============================================
|
VcName
| DistributionId |
comment
|
---------------------------------------------
|
vc1
|
4
|
|
---------------------------------------------
|
vc2
|
2
|
|
---------------------------------------------
==============================================================
|
GBASE CLUSTER FREE DATA NODE INFORMATION
|
==============================================================
| NodeName
|
IpAddress
| gnode | syncserver | DataState |
--------------------------------------------------------------
| FreeNode1 | 172.168.83.16 | OPEN
|
OPEN
|
0
|
--------------------------------------------------------------

未命名 ROW 类型包含字段,
但没有任何用户声明的名称。
未命名 ROW 类型通过其
结构来定义。
如果两个未命名 ROW 类型具有相同的结构(意味着字段的数据类型的排序列表),那
么它们相同。如果两种未命名 ROW 类型具有相同数目的字段,并且如果一种 ROW 类型中
每个字段的数据类型顺序与另一种 ROW 类型中对应字段的数据类型顺序相匹配,
那么这两
个未命名 ROW 数据类型等同。
例如,下列未命名 ROW 类型等同:

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

ROW (lname char(15), initial char(1) fname char(15))
ROW (dept char(15), rating char(1) name char(15))
下列 ROW 类型具有相同的字段数和相同的数据类型,但它们不相等,因为其字段顺序
不同:
ROW (x integer, y varchar(20), z real)
ROW (x integer, z real, y varchar(20))
未命名 ROW 类型字段可以是下列任何数据类型:
内置类型
集合类型
单值类型
其他 ROW 类型
不透明类型
不能在类型表或类型继承层次结构中使用未命名 ROW 类型。有关未命名 ROW 类型的
更多信息,请参阅《GBase
8s
SQL 指南:语法》和《GBase
8s 数据库设计和实现指南》。
创建未命名 ROW 类型
您可以使用数种方法来创建未命名 ROW 类型:
可以使用 ROW 关键字来声明未命名 ROW 类型。ROW 中的每个字段可具有不同的
字段类型。要指定字段类型,使用以下语法:
ROW(field_name field_type, ...)
field_name 必须遵从 SQL 标识的规则。(请参阅 GBase 8s SQL 指南:语法 中的
Identifier 一节。)
要生成未命名 ROW 类型,请使用 ROW 关键字作为具有一系列值的构造函数。使
用具有指定值的缺省数据类型来创建对应的未命名 ROW 类型。
例如:以下声明:
ROW(1, 'abc', 5.30)
定义下面的未命名 ROW 数据类型:
ROW (x INTEGER, y VARCHAR, z DECIMAL)
可通过隐式或显式从命名 ROW 类型或从另一种未命名 ROW 类型的强制转型来创
建未命名 ROW 类型。
任何表(对命名 ROW 类型定义的表除外)的行都是未命名 ROW 类型。
同一个表中不超过 195 列可以是未命名 ROW 类型。
将值插入到未命名 ROW 类型列
当为未命名 ROW 类型指定字段值时,
在构造函数后面列出字段值并将这些值列在圆括
号中。例如,假设您具有未命名 ROW 类型的列。以下 INSERT 语句将一组字段值添加至此

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

行列:
INSERT INTO table1 VALUES (ROW(4, 'abc'))
可在 SELECT 语句 WHERE 子句的 IN 谓词中指定行列以搜索匹配行值。
有关更多信息,
请参阅 GBase 8s SQL 指南:语法 中的 Condition 一节。