DESCRIBE 语句

使用 DESCRIBE 语句可在执行准备好的语句之前获得有关其输出参数和其它功能的信息。

GBase 8s ESQL/C 中使用此语句。(另见 DESCRIBE INPUT 语句。)

语法

元素 描述 限制 语法
descriptor 系统描述符区域的名称 必须已分配系统描述符区域 用引号括起的字符串
descriptor_var 指定系统描述符区域的主变量 必须包含分配的系统描述符区域的名称 特定于语言的名称规则
sqlda_pointer 指向 sqlda 结构 不可以美元符号($)或冒号(: )开始。如果使用动态的 SQL ,则 sqlda 结构是必需的 请参阅 GBase 8s ESQL/C 程序员手册 中的 sqlda 结构
statement_id 准备好的 SQL 语句的语句标识符 必须在先前的 PREPARE 语句中定义 PREPARE 语句标识符
statement _id_var 包含 statement_id 的值的主变量 必须在先前的 PREPARE 语句中定义 特定于语言的名称规则

用法

DESCRIBE 可以在运行时提供有关准备好的语句的信息:
  • 准备好的 SQL 语句的类型
  • 是 UPDATE 还是 DELETE 语句包含 WHERE 子句
  • 对于 EXECUTE 、EXECUTE FUNCTION 、EXECUTE PROCEDURE 、INSERT 、SELECT 或 UPDATE 语句,DESCRIBE 语句也返回值的数目、数据类型和大小,以及查询返回的列或表达式的名称。
  • 对于 SELECT 语句,DESCRIBE 还返回查询返回的列或表达式的名称。

使用此信息,您可以编写代码来分配内存,从而控制检索到的值,并且在取得这些值之后显示或处理它们。