(续)嵌入式SQL的处理过程含嵌入式SQL语句的主语言程序关系数据库管理系统预处理程序转换嵌入式SQL语句为函数调用充锯论转换后的主语言程序主语言编译程序编译处理目标语言程序An Introduction to Database System
An Introduction to Database System 嵌入式SQL的处理过程(续) 关系数据库管理系统预处 理程序转换嵌入式SQL语 句为函数调用 含嵌入式SQL语句 的主语言程序 转换后的 主语言程序 主语言编译程序 编译处理 目标语言程序
(续)嵌入式SQL的处理过程心为了区分SQL语句与主语言语句,所有SQL语句必须加前缀EXECSQL主语言为C语言时,语句格式■EXECSQL<SQL语句>数据库系统概论An Introduction to DatabaseSystem
An Introduction to Database System 嵌入式SQL的处理过程(续) ❖为了区分SQL语句与主语言语句,所有SQL语句 必须加前缀EXEC SQL, 主语言为C语言时,语句格式: ◼ EXEC SQL <SQL语句>;
8.1嵌入式SQL8.1.1嵌入式SQL的处理过程8.1.2嵌入式SQL语句与主语言之间的通信8.1.3不用游标的SQL语句数据库系统概论8.1.4使用游标的SQL语句8.1.5动态SQLAn Introduction to Database System
An Introduction to Database System 8.1 嵌入式SQL 8.1.1 嵌入式SQL的处理过程 8.1.2 嵌入式SQL语句与主语言之间的通信 8.1.3 不用游标的SQL语句 8.1.4 使用游标的SQL语句 8.1.5 动态SQL
8.1.2嵌入式SQL语句与主语言之间的通信心将SQL嵌入到高级语言中混合编程,程序中会含有两种不同计算模型的语句■SQL语句描述性的面向集合的语句系统概论负责操纵数据库高级语言语句过程性的面向记录的语句负责控制逻辑流程1它们之间应该如何通信?AnIntroduction toDatabaseSystem
An Introduction to Database System 8.1.2 嵌入式SQL语句与主语言之间的通信 ❖将SQL嵌入到高级语言中混合编程,程序中会含 有两种不同计算模型的语句 ◼ SQL语句 ⚫ 描述性的面向集合的语句 ⚫ 负责操纵数据库 ◼ 高级语言语句 ⚫ 过程性的面向记录的语句 ⚫ 负责控制逻辑流程 ◼ 它们之间应该如何通信?
嵌入式SQL语句与主语言之间的通信(续)必数据库工作单元与源程序工作单元之间的通信(1)向主语言传递SQL语句的执行状态信息,使主语言能够据此控制程序流程,主要用SQL通信区实现(2)主语言向SQL语句提供参数,主要用主变量实现(3)将SQL语句查询数据库的结果交主语言处理,主要用主变量和游标实现数据库系统AnIntroductiontoDatabaseSystem
An Introduction to Database System 嵌入式SQL语句与主语言之间的通信(续) ❖数据库工作单元与源程序工作单元之间的通信 (1)向主语言传递SQL语句的执行状态信息,使主语言 能够据此控制程序流程,主要用SQL通信区实现 (2)主语言向SQL语句提供参数,主要用主变量实现 (3)将SQL语句查询数据库的结果交主语言处理,主要 用主变量和游标实现