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

SQL Anywhere 12.0.1 » UltraLite - C 及 C++ 编程 » 应用程序开发 » 使用嵌入式 SQL 开发 UltraLite C++ 应用程序 » 主机变量

 

主机变量声明

通过将其放置在声明部分中来定义主机变量。用 BEGIN DECLARE SECTION 和 END DECLARE SECTION 语句把常规的 C 变量声明围起来以声明主机变量。

每当在 SQL 语句中使用主机变量时,必须在变量名之前添加冒号 (:),以便使 SQL 预处理器知道您正在引用(已声明的)主机变量,并将其与语句中允许使用的其它标识符区别开来。

可以使用主机变量代替任何 SQL 语句中的常量值。当数据库服务器执行命令时,从每个主机变量中读取主机变量的值,或将其写入主机变量中。主机变量不能用于代替表或列的名称。

SQL 预处理器不扫描 C 语言代码(声明部分内的除外)。在声明部分内允许使用变量的初始化程序,但不允许使用 typedef 类型和结构。

以下示例代码使用 INSERT 命令说明如何使用主机变量。这些变量由程序填充,然后插入到数据库中:



/* Declare fields for personal data. */
EXEC SQL BEGIN DECLARE SECTION;
   long employee_number = 0;
   char employee_name[50];
   char employee_initials[8];
   char employee_phone[15];
EXEC SQL END DECLARE SECTION;
/* Fill variables with appropriate values. */
/* Insert a row in the database. */
EXEC SQL INSERT INTO Employee
   VALUES (:employee_number, :employee_name,
      :employee_initials, :employee_phone );