返回首页

gbase数据、南大通用产品文档:GBase8sifx_var_flag() 函数

更新日期:2024年09月11日

ifx_var_flag() 函数确定如何为 lvarchar 或 var binary 主变量的数据缓冲区分配内存。


语法
var binary
mint ifx_var_flag(var_bin, flag)
var binary **var_bin;
int2 flag;

GBase 8s ESQL/C 编程指南
南大通用数据技术股份有限公司
- 816 -


lvarchar
mint ifx_var_flag(lvar, flag)
lvarchar **lvar;
int2 flag;

flag
分配标志的 int2 值,或为 0,或为 1。
var_bin
var binary 主变量的地址。
lvar
lvarchar pointer 主变量的地址。

用法
flag 参数的值是分配标志。它确定由谁来为 var_bin 主变量的数据处理内存分配,如
下:
当 flag 为 1 时,GBase 8s ESQL/C 自动地执行此内存分配。
当您不确定 SELECT 返回的数据量时,
在 SELECT 语句之前,
您可使用 flag 值
1。
当 flag 为 0 时,GBase 8s ESQL/C 不自动地执行此内存分配。
当您设置标志为 0 时,
您必须以 ifx_var_alloc() 函数为 lvar 或 var_bin 变量的数据
缓冲区分配内存。

如果您不为 lvarchar 或 var binary 主变量调用 ifx_var_flag() 函数,则 GBase 8s
ESQL/C 为它的数据缓冲区分配内存。或者您为 lvarchar 或 var binary 变量分配内存,
或者允许 GBase 8s ESQL/C 为您分配,您必须以 ifx_var_dealloc() 函数释放该内存。

返回代码
0
函数成功。
<0
函数不成功,且返回值指示错误的原因。

GBase 8s ESQL/C 编程指南
南大通用数据技术股份有限公司
- 817 -

SELECT 语句允许您查看关系数据库中的数据的子句构成。这些子句允许您从一个或多个
表或视图中选择列和行、指定一个或多个条件、对数据进行排序和总结以及将选择的数据
放置在临时表中。
本章介绍了如何使用五个 SELECT 语句子句。
如果包含全部五个子句,
那么它们必须按照
下列顺序出现在 SELECT 语句中:
1.
Projection 子句
2.
FROM 子句
3.
WHERE 子句
4.
ORDER BY 子句
5.
INTO TEMP 子句
只有 Projection 子句和 FROM 子句是必需的。这两个子句构成每个数据库查询的基础,
原因是它们指定要检索的列值,以及包含这些列的表。使用以下列表中的一个或多个其它
子句:

添加 WHERE 子句以选择特定行或创建连接条件。

添加 ORDER BY主键以更改生成数据的顺序。

GBase 8s SQL 指南:教程
南大通用数据技术股份有限公司
- 17 -

添加 INTO TEMP 子句以将结果保存为表以供进一步查询。
还有两个 SELECT 语句子句 GROUP BY 和 HAVING,
使您可以执行更复杂的数据检索。
编写高级 SELECT 语句中对它们进行了描述。另一个子句 INTO 指定要从应用程序中的
SELECT 语句中接收数据的程序或主变量。关于使用 SELECT 语句的完整语法和规则在
GBase 8s SQL 指南:语法中有所描述。

当您为数据库空间、BLOB 空间或智能大对象空间中的每个主块创建镜像块后,镜像开
始。
当您创建镜像块,数据库服务器就将数据从主块复制到镜像块。 当该过程完成,数据库
服务器开始镜像数据。 如果主块包含逻辑日志文件,数据库服务器不会在您创建镜像块
后立即复制数据,而是一直等待,直至您执行 0 级备份。有关此行为的说明,请参阅创
建镜像块。

GBase 8s 管理员指南
南大通用数据技术股份有限公司
- 327 -
重要: 您必须始终启动对整个数据库空间、BLOB 空间或智能大对象空间的镜像过程。
数据库服务器不允许您在数据库空间、BLOB 空间或智能大对象空间中选择特定块来镜
像。您必须为空间中的每个块创建镜像块。
在执行以下操作后,启动对存储空间的镜像过程:

在系统初始化期间创建镜像根数据库空间

将数据库空间的状态从未镜像更改为已镜像

创建镜像的数据库空间、BLOB 空间或智能大对象空间
这些操作中的每一个操作均需要您为存储空间中的现有块创建镜像块。
初始化期间为根数据库空间制作镜像
如果您在初始化数据库服务器时启用镜像,您还可为 Root 块指定镜像路径名和偏移量。
数据库服务器在初始化服务器时创建镜像块。但因为 Root 块包含逻辑日志文件,所以直
至您执行 0 级备份镜像才会实际开始。
要指定 Root 镜像路径名和偏移量,请在启动数据库服务器之前在 onconfig 文件中设置
MIRRORPATH 和 MIRROROFFSET 的值。
如果未提供镜像路径名和偏移量,但希望为根数据库空间启动镜像过程,那么必须在初始
化数据库服务器后更改根数据库空间的镜像状态。
更改镜像状态
您可以进行以下两种对镜像块状态的更改:

将镜像块从联机更改为脱机

将镜像块从脱机更改为恢复
仅当块是镜像对的一部分时才可以使块脱机或复原块。只要该对中的另一块处于联机状
态,您就可以使主块或镜像块脱机。
有关如何确定块状态的信息,请参阅监视磁盘使用量。