Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (中文) » SQL Anywhere 服务器 - 编程 » SQL Anywhere 数据访问 API » SQL Anywhere 外部函数 API » 外部函数原型

 

an_extfn_result_set_column_info 结构

用于描述结果集。

语法
typedef struct an_extfn_result_set_column_info {
    char *                              column_name;
    a_sql_data_type                     column_type;
    a_sql_uint32                        column_width;
    a_sql_uint32                        column_index;
    short int                           column_can_be_null;
} an_extfn_result_set_column_info;
属性
  • column_name   指向列的名称(以空值终止的字符串)。

  • column_type   指示列的类型。它是嵌入式 SQL 数据类型之一,如 DT_INTDT_FIXCHARDT_BINARY。请参见嵌入式 SQL 数据类型

  • column_width   定义 char(n)、varchar(n) 和 binary(n) 声明的最大宽度,对于所有其它类型均设置为 0。

  • column_index   列的顺序位置,从 1 开始。

  • column_can_be_null   如果列可以为空,则设置为 1;否则,设置为 0。

注释

以下代码段显示了如何设置此类型对象的属性,以及如何描述调用 SQL 环境的结果集。

// set up column descriptions
// DepartmentID          INTEGER NOT NULL
col_info[0].column_name  = "DepartmentID";
col_info[0].column_type  = DT_INT;
col_info[0].column_width = 0;
col_info[0].column_index = 1;
col_info[0].column_can_be_null = 0;

// DepartmentName        CHAR(40) NOT NULL
col_info[1].column_name  = "DepartmentName";
col_info[1].column_type  = DT_FIXCHAR;
col_info[1].column_width = 40;
col_info[1].column_index = 2;
col_info[1].column_can_be_null = 0;

extapi->set_value( arg_handle,
                EXTFN_RESULT_SET_ARG_NUM,
                (an_extfn_value *)&rs_info,
                EXTFN_RESULT_SET_DESCRIBE );
另请参见