- 1、本文档共84页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据库系统(四)课件
数据库系统 授课教师:张淼 计算机学院 回顾 标准SQL 集合操作 非过程性操作:指出要做什么,而不需指出怎样做 一条语句就可实现复杂查询的结果 高度非过程化的优点也同时造成了它的一个弱点:缺少流程控制能力,难以实现应用业务中的逻辑控制 回顾 例如: 依据不同条件执行不同的检索操作等 If some-condition Then SQL-Query1 Else SQL-Query2 End If 再如: 控制检索操作执行的顺序 Do While some-condition SQL-Query End Do 回顾 再如:有时需要在SQL语句检索结果之上再进行处理 SQL-Query1 For Every-Record-By-SQL-Query1 Do Process the Record Next SQL-Query2 If Record-By-SQL-Query2 Satisfy some-condition Then Process the Record (condition true) Else Process the Record (condition false) End If 回顾 SQL编程技术能够有效克服SQL语言实现复杂应用方面的不足,提供应用系统和RDBMS之间的互操作性。 第4章 数据库编程 4.1 嵌入式SQL 4.2 ODBC编程 4.3 存储过程 第4章 数据库编程 4.1 嵌入式SQL 4.2 ODBC编程 4.3 存储过程 4.1嵌入式SQL 将SQL语言嵌入到某一种高级语言中使用 这种高级语言,如C/C++, Java等,称为宿主语言(Host Language) ,简称主语言 嵌入在宿主语言中的SQL与前面介绍的交互式SQL有一些不同的操作方式 4.1嵌入式SQL 交互式SQL语言 select Sname, Sage from Student where Sname=‘张三’; 4.1嵌入式SQL 嵌入式SQL语言 以宿主语言C语言为例 EXEC SQL select Sname, Sage INTO :vSname, :vSage from Student where Sname=‘张三’ ; 典型特点 EXEC SQL引导SQL语句 增加一 INTO子句: 该子句用于指出接收SQL语句检索结果的程序变量 由冒号引导的程序变量,如: ‘:vSname’, ‘:vSage’ 4.1嵌入式SQL 主要内容 嵌入式SQL的处理过程 嵌入式SQL语句与主语言之间的通信 不使用游标的SQL语句 使用游标的SQL语句 动态SQL 4.1嵌入式SQL-处理过程 预编译方法 4.1嵌入式SQL-处理过程 为了区分SQL语句与主语言语句, 所有SQL语句必须加前缀EXEC SQL,以(;)结束: EXEC SQL SQL语句; 4.1嵌入式SQL-嵌入式SQL语句与主语言之间的通信 将SQL嵌入到高级语言中混合编程,程序中会含有两种不同计算模型的语句 SQL语句 负责操纵数据库 描述性的面向集合的语句 高级语言语句 负责控制程序流程 过程性的面向记录的语句 4.1嵌入式SQL-嵌入式SQL语句与主语言之间的通信 数据库工作单元与源程序工作单元之间的通信 SQL通信区 向主语言传递SQL语句的执行状态信息 使主语言能够据此控制程序流程 主变量 主语言向SQL语句提供参数 将SQL语句查询数据库的结果交主语言进一步处理 4.1嵌入式SQL-嵌入式SQL语句与主语言之间的通信 数据库工作单元与源程序工作单元之间的通信 游标 解决集合性操作语言与过程性操作语言的不匹配 4.1嵌入式SQL-嵌入式SQL语句与主语言之间的通信 SQL通信区 SQLCA: SQL Communication Area SQLCA是一个数据结构 4.1嵌入式SQL-嵌入式SQL语句与主语言之间的通信 SQL通信区 SQLCA的用途 SQL语句执行后,RDBMS反馈给应用程序信息 描述系统当前工作状态 描述运行环境 这些信息将送到SQL通信区SQLCA中 应用程序从SQLCA中取出这些状态信息,据此决定接下来执行的语句 4.1嵌入式SQL-嵌入式SQL语句与主语言之间的通信 SQL通信区 SQLCA使用方法 定义SQLCA 用EXEC SQL INCLUDE SQLCA定义 4.1嵌入式SQL-嵌入式SQL语句与主语言之间的通信 SQL通信区 SQLCA使用方法 使用SQLCA SQLCA中有一个存放每次执行SQL语句
文档评论(0)