ALLOCATE DESCRIPTOR 语句

使用 ALLOCATE DESCRIPTOR 语句为系统描述符区域(SDA)声明和分配内存。在 ESQL/C 中使用此语句。

语法

元素 描述 限制 语法
descriptor 未分配的系统描述符区域的名称 包含在单引号 ( ' ) 中。在 SDA 名称中必须是唯一的 用引号括起的字符串.
descriptor_var 用来存储系统描述符区域名称的主机变量 必须包含未分配系统描述符区域的名称 特定于语言
items descriptor 中项描述符的数目。缺省值为 100 。 必须是大于零的无符号 INTEGER 文字的数值
items_var 包含项目数目的主变量 数据类型必须为 INTEGER 或 SMALLINT 特定于语言

用法

ALLOCATE DESCRIPTOR 语句创建新的系统描述符区域,该区域是内存中的一个位置,存放 DESCRIBE 语句可以显示的信息,或存放关于查询的 WHERE 子句的信息。

系统描述符区域(SDA)包含一个或多个称为 item descriptors 的字段。每个项描述符都有一个数据库服务器可以接收或发送的数据值。项描述符也包含关于该数据的信息,例如数据类型、长度、小数位、精度和可以为 NULL 值。

系统描述符区域存放 DESCRIBE ... USING SQL DESCRIPTOR 语句获取的信息,或者存放关于一个动态执行语句中的 WHERE 子句的信息。

如果您分配一个系统描述符区域的名称与一个现有系统描述符区域的名称相同,则数据库服务器返回一条错误消息。如果您使用 DEALLOCATE DESCRIPTOR 语句释放了该描述符,则 ALLOCATE DESCRIPTOR 语句可以重新使用同样的描述符名称。