嵌入式 SQL 是由 C/C++ 程序代码与伪代码组合而成的环境。可穿插传统 C/C++ 代码的伪代码是 SQL 语句的子集。预处理器将嵌入式 SQL 语句转换为函数调用,这些函数调用是被编译以创建该应用程序的实际代码的一部分。
下面是一个非常简单的嵌入式 SQL 程序示例。它演示了通过更改雇员 195 的姓氏对 UltraLite 数据库记录进行更新。
#include <stdio.h> EXEC SQL INCLUDE SQLCA; main( ) { db_init( &sqlca ); EXEC SQL WHENEVER SQLERROR GOTO error; EXEC SQL CONNECT "DBA" IDENTIFIED BY "sql"; EXEC SQL UPDATE employee SET emp_lname = 'Johnson' WHERE emp_id = 195; EXEC SQL COMMIT; EXEC SQL DISCONNECT; db_fini( &sqlca ); return( 0 ); error: printf( "update unsuccessful: sqlcode = %ld\n", sqlca.sqlcode ); return( -1 ); } |
尽管此示例过于简单而没什么用处,但它说明了所有嵌入式 SQL 应用程序所共有的以下方面:
每个 SQL 语句前面都有关键字 EXEC SQL。
每个 SQL 语句都以分号结尾。
一些嵌入式 SQL 语句不属于标准 SQL。INCLUDE SQLCA 语句就是一个例子。
除 SQL 语句外,嵌入式 SQL 还提供执行一些特定任务的库函数。函数 db_init 和 db_fini 就是两个库函数调用的示例。
![]() |
使用DocCommentXchange讨论此页。
|
版权 © 2012, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.1 |