当前位置:文档之家› 数据库访问接口技术

数据库访问接口技术

➢ 目前PHP几乎支持所有的主流数据库,这就使它 的应用有很大的灵活性。
➢ 在网站建设特别是中小网站建设方面,Linux + Apache + PHP + MySQL的配置方式已逐渐成为 一种流行趋势,因此下面将主要以MySQL数据库 的操作方式为例讲述如何利用PHP操纵数据库。
Page 19
PHP数据库操作步骤
➢ ④ 关闭数据库:conn.close()
Page 25
ASP实例
➢ 下面举一个实例说明如何应用ASP技术实现对WEB数据库的访问。该 实例是某技术中心商品查询系统中的Web功能模块开发,系统要求当 用户输入查询信息,如:产地或产品类别后,系统能返回查询结果。 我们以产品类别为例:catachoi.asp文件利用Form标签形成一个查询入 口,当用户选择了某产品类别,并按下“Submit”按钮后,它将产品类 别号以ProdName变量的形式送到p_result.asp中,p_result.asp根据 ProdName的值,使用SQL语句在服务器端完成数据库表文件的查询, 最后将查询结果送回浏览器端。
通过SQL指令来完成的,如要在数据表signaltab中查询代码中含有 “X”的记录: ➢ sqlStr = “select * from signaltab where code like ‘%X%’” ➢ rs = conn.Execute(sqlStr)
Page 24
CONT:使用ADO组件查询WEB数据库
➢ ⑤ 关闭数据库 ➢ $Success = mysql_close(连接号); ➢ 关闭与数据库的连接。若未指定连接号,则会关闭最后一次连接。实
际上当 PHP 整页程序结束后,将会自动关闭与数据库的非永久性连接 ,因此本函数并非必须执行。执行成功则返回true,否则返回false。
Page 22
3、ASP访问数据库步骤
➢ 客户应用通过调用ODBC驱动程序管理器(Driver Manager) 所提供的API或调用封装了ODBC驱动程序管理器API的类库, 对不同数据库的数据源进行操作。在数据源和ODBC API之间 起联系作用的是为不同的数据库专门开发的 ODBC Driver 。
Page 11
工作原理示意图
VB应用程序 ODBC接口
4.3 数据库访问接口技术

• 4.3.1 数据库应用体系结构与系统实现技术 • 4.3.2 两层结构数据库系统的访问接口技术 • 4.3.3 Web-DB访问接口技术
Page 1
4.3.1 数据库应用体系结构与系统实现技术
➢ 应用体系结构与数据处理任务分担 ➢ 客户/服务器系统的处理方式 ➢ 数据库系统的优化技术
➢ 越来越多的数据库厂商普遍会在自己的产品中支持ODBC,随 着数据库产品一起发放专用的 ODBC Driver。
Page 14
4.3.3 Web-DB访问接口技术
➢ 浏览器/服务器的数据访问方式 ➢ Web与数据库的访问接口技术 ➢ 数据库访问对象ADO ➢ JDBC驱动程序 ➢ 基于JDBC的数据库访问方案
Page 15
浏览器/服务器的数据访问方式
客户端 浏览器
客户端 浏览器
WEB 服务器
数据请求 ODBC 检索结果
数据库 服务器
浏览器/服务器的数据访问方式
Page 16
分布式数据处理方式
(1) Browser
(2) Java Applet
HTTP Server
Server
Application (3)JDBC Driver RDBMS Client/无
Page 20
CONT:PHP数据库操作步骤
➢ ② 连接数据库 ➢ $Success = mysql_select_db(数据库名,连接号); ➢ 该函数的返回值为true或false,表示连接数据库是否成功。 ➢ ③ 执行SQL语句 ➢ $ResNo = mysql_query(SQL语句,连接号); ➢ 此步执行过程中,如果该SQL语句是select语句,则返回值为一个结果
➢ SQL一致性有 3种:最低 SQL、核心 SQL和扩展 SQL。
– 最低 SQL提供了一个SQL子集,以使应用程序进行交互操作。 – 核心SQL提供了与X/OPEN SQL规范相同的功能。 – 扩展 SQL则描述了独特于ODBC的 SQL扩充,它为许多DBMS支持的
高级SQL特性与数据类型提供了一种方便的途径,如外层连接、 标量函数、存储过程援引等等。
ADO:ActiveX Data Object是微软用于访问数据所创建的技术,访问 数据的方法之一。简单易用,功能强大。 (1)定义数据源:在Web服务器上打开“控制面板”,选中“ODBC”, 在“系统DSN”下选“添加”,选定你希望的数据库种类、名称、位置 等 。 本 文 定 义 “ SQL SERVER” , 数 据 源 为 “ HT” , 数 据 库 名 称 为 “HTDATA”,脚本语言采用Jscript。
➢ ① 连接数据库系统: ➢ $LinkNo = mysql_connect(主机,用户名,口令); ➢ 由于mysql各用户的口令可以随该用户所在机器IP地址不同而改变,因
此必须同时提供主机名、用户名和口令才能连接到MySQL数据库中。该 函数返回值为一连接号,这个连接号将在以后的操作中用到。 ➢ 与数据库系统建立连接常用的另一个函数是: ➢ $LinkNo = mysql_pconnect(主机,用户名,口令); ➢ 与上一个函数不同的地方在于使用本函数连接数据库系统时,程序会 先寻找是否曾经执行过本函数,若执行过则传回先前执行的结果ID。 另外本函数建立的连接无法使用 mysql_close()来关闭。
ODBC驱动 SQL数据库
C++应用程序 ODBC接口
ODBC(SQL语言) ODBC驱动 VFP数据库
Page 12
Delphi程序 ODBC接口
ODBC驱动 DB数据库
ODBC工作原理分析
➢ ODBC采用的一致性级别构成了其功能分区的最高种类。 ODBC定义了两种一致性级别:API一致性和SQL一致性。
Page 13
CONT:ODBC工作原理分析
➢ Driver的作用主要包括: –联结数据库管理, –错误处理管理, –数据类型转换 –对各种DBMS以不同方式提供的目录进行访问管理。
➢ 现在大约有50多家数据库产品支持ODBC,包括MS SQL Server、 Sybase SQL Server、 Oracle等客户/服务器网络 数据库和FoxPro、dBase、Excel等单机数据库,
分布式数据处理方式
Page 17
RDBMS
1、CGI技术与数据库
➢ 当收集到用户的各种信息后,一般都会将其保存到数据库 当中,以作为以后分析和使用的原始资料,这就涉及到如 何利用CGI程序操作数据库的问题。一般推荐用C语言编制 相应的CGI程序操作数据库。
➢ 与数据库操作相关的CGI程序一般按如下过询WEB数据库
➢ (1)调用Server.CreateObject方法取得“ADODB.Connection”的实例 ,再使用Open方法打开数据库:
➢ conn = Server.CreateObject(“ADODB.Connection”) ➢ conn.Open(“HT”) ➢ (2)指定要执行的SQL命令 ➢ 连接数据库后,可对数据库操作,如查询,修改,删除等,这些都是
号,否则返回值可以不予理会。如果函数执行失败,则返回值为false 。
Page 21
CONT:PHP数据库操作步骤
➢ ④ 获取执行结果:方法很多,这里只介绍两种比较常用的方法:
– ·$Result = mysql_fetch_row(结果号); – 该函数用来将查询结果放到数组Result中,该数组通过数字索引,第一个
➢ (3)使用RecordSet属性和方法,并显示结果
– 为了更精确地跟踪数据,要用RecordSet组件创建包含数据的游标,游标就 是储存在内存中的数据。
– rs = Server.CreateObject(“ADODB.RecordSet”) – rs.Open(sqlStr,conn,1,A) //注:A=1读取,A=3 新增、修改、删除 – 在RecordSet组件中,常用的属性和方法有: – rs.Fields.Count: RecordSet对象的字段数。 – rs(i).Name: 第i个字段的名称,i为0至rs.Fields.Count-1 – rs(i): 第i个字段的数据,i为0至rs.Fields.Count-1 – rs(“字段名”): 指定字段的数据。 – rs.Record.Count:游标中的数据记录总数。 – rs.EOF: 是否最后一条记录。rs.MoveFirst: 指向第一条记录。
➢ (1)专用数据库驱动程序 ➢ (2)ODBC ➢ (3)JDBC
Page 8
数据源访问接口技术:ODBC
➢ Microsoft推出的ODBC(开放数据库互连)技术,旨在为异 质数据库的同时访问提供了公共的API,以使客户应用对要 访问的数据源透明。
➢ ODBC实际上是一个数据库访问函数库,通过它可以使应用 程序可以直接操纵数据库中的数据。它是基于SQL语言的, 是一种在SQL和应用界面之间的标准接口,它解决了嵌入式 SQL接口(SQLAPI)非规范化的矛盾,免除了应用程序软件 随数据库的改变而改变的痛苦。
Page 9
ODBC示意图
应用程序
驱动程序管理器 驱动程序 驱动程序 驱动程序
数据源
数据源
数据源
数据库
数据库
Page 10
数据库
ODBC工作原理
➢ ODBC通过驱动程序来提供数据库的独立性。驱动程序是一个 用以支持ODBC函数调用的模块。应用程序通过调用驱动程序 所支持的函数来操纵数据库。若想使应用程序操作不同类型 的数据库,就要动态地连接到不同的驱动程序上。
相关主题