0

当使用嵌入式 SQL 编写 C 程序时(例如:假设创建了一个插入值的表),在前端显示输出表之前如何在后端执行?帮助表示赞赏...!

4

1 回答 1

0
  • SQL 语句嵌入到宿主语言中,例如:C
  • 因此,我们有 SQL 语句和 C 语言语句,在这种情况下,SQL 语句嵌入在 C 源代码中。
  • 宿主语言代码由宿主编译器编译,嵌入式语言代码首先由嵌入式 SQL 预处理器预处理,预处理器的输出只是 C 代码,即 C 库调用,由 C 编译器编译。

由于我们有像 #include、#define 这样的指令用于 C 预处理器,因此我们几乎没有用于 SQL 嵌入式预处理器的指令,例如:EXEC SQL begin declare sectionEXEC SQL end declare section

EXEC SQL begin declare section;
int cno;
varchar cname[31];
varchar street[31];
int zip;
char phone[13];
EXEC SQL end declare section;

在这里,SQL 嵌入式预处理器转换如下所示:-

/* varchar cname[31]; */
struct {
unsigned short len;
unsigned char arr[31];
} cname;

这只是为了让您了解嵌入式 SQL 的工作原理。更详细的介绍可以参考Oracle-8 Embedded SQL

于 2015-06-16T07:09:27.630 回答