B/S结构应用程序与数据库的连接
2018-11-07李雪
李雪
摘要:本文将网络应用程序开发中经常要用到的数据库连接技术和实现方法,进行整理和分析,描述了各自的优缺点,给出了根据具体的应用环境和要求,选择恰当的数据库连接方法的思想,希望在网络技术发展日新月异的今天,能够给予有志于此的读者一些帮助。
关键词:B/S数据库连接
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2018)21-0007-02
1 B/S结构应用程序的现状
网络技术的飞速发展,使基于网络的应用程序得到蓬勃发展,如电子商务、网银、各类论坛、QQ、微信等等,正如我们能够切身感受到的一样,这些应用在一定程度上正在推动着社会经济生活的重大变革和进步。五花八门的网络应用程序,按照其部署的体系结构可划分为B/S(Browser/Server结构,即浏览器/服务器结构,简称B/S结构,如淘宝、京东、天猫、百度、各种论坛和各类信息查询平台等)和C/S(Client/Server结构,即客户端/服务器结构,简称C /S结构,如QQ、微信、证券交易等)两大类。B/S和C/S两种程序结构各具特点,任何一方都不可能将对方完全取代。
B/S结构的应用程序,用户端只要有浏览器即可运行,其所有的程序和数据全部保存在服务器端。因此,B/S结构的应用程序在部署、升级维护等方面具有十分明显的优势,而且其对用户端的要求十分低,用户数量基本不受限制。因此,随着网络的进一步普及和发展,在可以预计的未来,B/S结构的应用程序在大型管理软件领域的市场有继续扩大的趋势,其在管理软件方面的主导地位还会得到加强。
2 B/S结构应用程序与数据库的连接技术简介
我们通过网银转账、查询余额或者在京东网购下单等活动,其实质都是在经过了严格认证的基础上,对相应的数据库数据进行了特定权限的操作,并得到了认可和保存。因此,通常情况下B/S結构程序的后台都要有数据库的支持,才能实现其功能。这其中的关键是用户对既不清楚存放位置,也不明白其结构的相关数据库如何进行远程操作,这是B/S结构应用程序开发者都要面临的,也是让许多初学者倍感困惑的一点。为了让初学者少走弯路,笔者在此将解决这个问题的方法——数据库的连接,进行阐述、分析和对比,以方便读者根据具体的应用环境和要求正确选用。
2.1 开放式数据库互联(ODBC)技术
开放式数据库互联(Open Data Base Conectivity,简写为ODBC),是微软早期为网络环境下实现异构数据库的互联和数据共享而推出的一项标准接口技术,其定义了一个基于SQL的、公共的、与数据库无关的标准,建立了一组规范, 并提供了一组对数据库访问的标准API(应用程序编程接口),从而使得应用程序与数据库管理系统(DBMS)之间在逻辑上实现了分离,这也是ODBC当初一经推出即获得了巨大成功的原因之一。ODBC在大多数DBMS上都可以使用,可以说凡是像样的DBMS都支持ODBC,因为ODBC作为一个比较成熟的规范和公认的标准,其在1996年左右定型之后就基本没有大的改动,但它稳定可靠的工作表现伴随着操作系统的不断升级,至今仍然十分卓越,学习和使用API(应用程序设计接口)是一定要从了解ODBC开始的。
2.2 对象链接和嵌入数据库(OLEDB)技术
OLEDB(对象链接和嵌入,又称为OLE DB或OLE-DB),是微软最新推出的通向不同数据源的应用程序接口,它是基于COM(组件对象模型 Component Object Model简写为COM)的一组接口规范。其速度快,设置使用简单,在没有得到OLE DB的驱动程序时,仍然可以访问原有的数据库系统,这就使得OLE DB虽然代表发展的方向,却也在未来长时间内无法与ODBC断然割裂。尽管如此,我们的目光今后还是应该多放在直接的OLEDB方面。
3 B/S结构应用程序与常用数据库的连接方法
3.1 数据库的ODBC连接
ODBC中提供用户dsn、系统dsn和文件dsn三种dsn( Data Source Name:数据源名称连接)。用户dsn和系统dsn存放在ODBC储存区里,而文件dsn则放在一个文本文件中。用户dsn和系统dsn的创建要通过操作系统的控制面版,用“管理工具”分项中的“数据源”子项创建,具体步骤就不详细介绍了。以在asp(Active Server Pages:动态服务器页面,可用来创建动态交互式网页并建立B/S结构应用程序)中,连接微软access的MDB数据库为例,写法如下(句中关于用户名、密码及数据库名、文件存放目录的部分需根据实际填写):
ODBC用连接字符串,从而不用“控制面版”建立dsn,适用于没有系统控制权限的情况,比如租用远程虚拟主机时。OLEDB则不需要操作“控制面版”,更加简便灵活,所以不存在这种情况。因此,OLEDB一般是优先选用的数据库连接方法。server.mappath()为服务端脚本,用以获取站点根目录的实际逻辑路径,用来解决虚拟主机的目录路径不确定的问题。租用虚拟主机是中小企业、学校、团体等常用的网络需求解决方案。
3.3 OLEDB连接字符串详解
以连接ACCESS的.mdb数据库为例。
1)标准的也是常用的访问方式:
"provider=microsoft.jet.oledb.4.0;"&"datasource=c:\somepath\mydb.mdb;" &"userid=admin;" & "password=;"
2)如果mdb设置了访问密码:
"provider=microsoft.jet.oledb.4.0;"&"datasource=c:\somepath\mydb.mdb;" &"jetoledb:database password=xxxxxx;","admin", ""
3)如果mdb存放在虚拟主机中:
"provider=microsoft.jet.oledb.4.0;data source=" &server.mappath;("/data/lybo.mdb")
4 一个连接MYSQL数据库的实例
制作“职业教育信息化管理及评价综合应用系统”时,我们设计的后台为MYSQL数据库,开发软件為Adobe DreamWeaver cs5,测试环境为WINDOWS7(32位)并启用其自带的IIS6.0全部功能,安装数据库系统mysql-5.5.19-win32版本和mysql-connector-odbc-5.2.6-win32版本。测试环境的配置和数据库结构的设计等部分略,本例是用ODBC连接到数据库,因为我们没有得到MYSQL数据库的OLE DB连接提供程序。现将连接数据库的过程图解如下:
1)在Dreamweaver中配置好测试服务器,打开需要连接数据库的asp文档,在右侧的面板组中找到“数据库”面板,如果没有找到可从“窗口”菜单中打开它。点击“+”号。
2)在弹出的窗口中点击“自定义连接字符串”,然后在打开的窗口中输入连接名称(随便用两三个小写字母即可,比如我们用ff),在下面的连接字符串框中输入:"Driver={mysqlodbc 5.2 ansidriver};Server=192.168.5.110;DataBase=jsxy;Uid=jsxy;Pwd=syyu;"。“192.168.5.110”是运行MYSQL的主机IP地址;数据库名称是“jsxy”,设定的登录该数据库系统的用户名和密码分别是“jsxy”和“syyu”。
3)点击“测试”按钮,如果弹出如图所示窗口,则表示已经成功建立了一个名为ff的连接,在该站点中可以用这个连接,通过开发应用程序对“jsxy”这个数据库进行查询、修改、更新、统计等操作。
5 结语
数据库应用技术一直在飞速发展,国家发展大数据和信息化社会的支撑也是在网络技术和数据库技术,而实现这一宏伟而美好愿景的最后一公里,应该集中在B/S结构应用程序的开发和使用方面,对此,我们和我们的学生理应提前做些准备。
参考文献:
[1] 陈承欢.《Dreamweaver CS3网页制作案例教程》[M].北京:高等教育出版社. 2012.12.
[2] 尚俊杰.《网络程序设计——ASP》[M].清华大学出版社[M].北京:北京交通大学出版社.2013.1.
[3] 庄永龙.《instant ASP实例解析网站编程》[M].北京:北京希望电子出版社.2002.1.
【通联编辑:唐一东】