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

SAP Sybase SQL Anywhere 16.0 (中文) » SQL Anywhere 服务器 - 编程 » 嵌入式 SQL » 如何使用嵌入式 SQL 发送和检索长整型值

 

使用静态 SQL 发送 LONG 数据

使用嵌入式 SQL 应用程序中的静态 SQL 将 LONG 值发送到数据库。

前提条件

执行此任务没有前提条件。

 任务
  1. 根据需要声明类型为 DECL_LONGVARCHAR、DECL_LONGNVARCHAR 或 DECL_LONGBINARY 的主机变量。

  2. 如果您要发送 NULL,请将指示符变量设置为负值。

  3. 将主机变量结构的 stored_len 字段设置为数组字段中数据的字节数。

  4. 通过打开游标或执行语句发送数据。

结果

嵌入式 SQL 应用程序可随时将 LONG 值发送到数据库。

下面的代码段说明使用静态嵌入式 SQL 发送 LONG VARCHAR 的机制。它并不是为实际的应用程序而准备的。



#define DATA_LEN 12800
EXEC SQL BEGIN DECLARE SECTION;
// SQLPP initializes longdata.array_len
DECL_LONGVARCHAR(128000) longdata;
EXEC SQL END DECLARE SECTION;

void set_test_var()
{
  // init longdata for sending data
  memset( longdata.array, 'a', DATA_LEN );
  longdata.stored_len = DATA_LEN;

  printf( "Setting test_var to %d a's\n", DATA_LEN );
  EXEC SQL SET test_var = :longdata;
}

 另请参见