《应用程序访问数据库的方式.ppt》由会员分享,可在线阅读,更多相关《应用程序访问数据库的方式.ppt(11页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、u通过可以嵌套SQL的宿主语言u通过应用程序接口,允许将 SQL 查询送给数据库nODBCnJDBCn其它:如RDO,ADO和OLEDB。这些接口目前并不能代替ODBC。应用程序访问数据库的方式2/16/20231补充:ODBCOpen Database Connectivityu它是一种用来在相关或不相关的数据库管理系统(DBMS)中存取数据的、用C语言实现的、标准应用程序数据接口。u通过ODBC API,应用程序可以存取保存在多种不同数据库管理系统(DBMS)中的数据,而不论每个DBMS使用了何种数据存储格式和编程接口。2/16/20232JDBCu是一种可用于执行SQL语句的JavaAP
2、I。它由一些Java语言编写的类和界面组成。uDBC为数据库应用开发人员、数据库前台工具开发人员提供了一种标准的应用程序设计接口,使开发人员可以用纯Java语言编写完整的数据库应用程序。2/16/20233比较可以从Java中使用ODBC,为什么还需要JDBC呢?uODBC并不适合在Java中直接使用。nODBC是一个C语言实现的API,从Java程序调用本地的C程序会带来一系列类似安全性、完整性、健壮性的缺点。u完全精确地实现从C代码ODBC到JavaAPI写的ODBC的翻译也并不令人满意,比如指针。uODBC并不容易学习,它将简单特性和复杂特性混杂在一起,甚至对非常简单的查询都有复杂的选项
3、。而JDBC刚好相反,它保持了简单事物的简单性,但又允许复杂的特性。2/16/20234比较uJavaAPI对于纯Java方案来说是必须的。n当使用ODBC时,人们必须在每一台客户机上安装ODBC驱动器和驱动管理器。n如果JDBC驱动器是完全用Java语言实现的话,那么JDBC的代码就可以自动的下载和安装,并保证其安全性,而且,这将适应任何Java平台,从网络计算机NC到大型主机Mainframe。uJDBC支持两层模型,也支持三层模型访问数据库。2/16/202353.7 嵌入式SQLu嵌入式SQLn将SQL嵌入到某种高级语言(又称主语言)中使用,利用高级语言的过程性结构来弥补SQL实现复杂
4、应用方面的不足nSQL语句负责操纵数据库,主语言语句负责控制程序流程2/16/202363.7.1 嵌入式SQL的一般形式uEXEC SQL前缀用以区分SQL语句与主语言语句uDBMS多采用预编译方式处理宿主语言SQLu嵌入SQL语句包括n说明性语句n可执行语句:数据定义、数据控制、数据操纵EXEC SQL;2/16/202373.7.2 与主语句之间的通信u数据库工作单元与源程序工作单元如何通信?n用SQL通信区向主语言传递SQL语句的执行状态信息n主语言通过主变量向SQL语句提供参数nSQL语句查询数据库的结果通过主变量和游标交主语言进一步处理2/16/20238游标uSQL语言是集合处理方式,主语言是单记录处理方式,如何协调?u引入游标n游标是系统为用户开设的一个数据缓冲区,存放SQL语句的执行结果n每个游标区都有一个名字n用户通过游标逐一获取记录,并赋给主变量,交主语言进一步处理2/16/20239游标的使用u说明游标 EXEC SQL DECLARE CURSOR FOR;u打开游标 EXEC SQL OPEN;u推进游标并获取当前记录(通常在循环结构中使用)EXEC SQL FETCH INTO,;u关闭游标 EXEC SQL CLOSE 2/16/202310作业P148 3、4、5、11、122/16/202311