ODBC与ADO对象
1.3 ODBC与ADO对象
1.3.1 ASP访问数据库的几种方式
在我们介绍了数据库操作的基础知识后,我们接下来的任务是告诉大家如何用ASP访问数据库,因为一个系统不可能没有数据呀,所以我们就必须让ASP采用一个高效的方法通过Internet或Intranet来访问、操作数据库。我们知道在传统的HTML页面中,访问数据库一般是通过公用网关接口(CGI)来实现,这种方式不仅开发困难,而且在出现大量并发请求时会显著地降低服务器的运行效率,而采用ASP实现数据库访问可以说能较好地解决这个问题。
在ASP脚本中可以通过三种方式访问数据库:
● IDC(Internet Database Connector)方式
● ADO(ActiveX Data Objects)方式
● RDS(Remote Data Service)方式
从概念上来讲,这三种访问方式对数据库的访问是由Internet Information Server来完成的。Web浏览器用HTTP协议向Internet信息服务器(IIS)递交请求。Internet信息服务器执行访问数据库的操作,并以一个HTML格式的文档作为回答。
1.Internet数据库接口(IDC)
IDC是一个传统的数据库查询工具,用来定义和执行数据库查询的SQL命令,并向浏览器返回一个指定数据格式的页面。使用IDC访问数据库最大的特点是简单,几乎不需要编程就能实现对数据库的访问。
2.ActiveX数据对象(ADO)
与IDC不同,用ADO访问数据库更类似于编写数据库应用程序,ADO把绝大部分的数据库操作封装在七个对象中,在ASP页面中编程调用这些对象执行相应的数据库操作。ADO是ASP技术的核心之一,它集中体现了ASP技术丰富而灵活的数据库访问功能。ADO建立了基于Web方式访问数据库的脚本编写模型,它不仅支持任何大型数据库的核心功能,而且支持许多数据库所专有的特性。ADO使用本机数据源,通过ODBC访问数据库。这些数据库可以是关系型数据库、文本型数据库、层次型数据库或者任何支持ODBC的数据库。ADO的主要优点是易用、高速、占用内存和磁盘空间少,所以非常适合于作为服务器端的数据库访问技术。相对于访问数据库的CGI程序而言,它是多线程的,在出现大量并发请求时,也同样可以保持服务器的运行效率,并且通过连接池(Connection Pool)技术以及对数据库连接资源的完全控制,提供与远程数据库的高效连接与访问,同时它还支持事务处理(Transaction),以开发高效率、高可靠性的数据库应用程序。
正是因为使用ADO需要编写脚本程序,所以ADO能够实现更复杂、更灵活的数据库访问逻辑。目前,ADO包括Command、Connection、Recordset等七个对象和一个动态的Properties集合,绝大部分的数据库访问任务都可以通过它们的组合来完成。
1.3 ODBC与ADO对象
2.配置ODBC数据源
接下来我们就讲述一下系统DSN的配置过程。
首先在 Windows 的“开始”菜单打开“控制面板”,双击“ODBC”图1.标,然后选择“文件 DSN”属性页,单击“添加”,如图1.17所示。接下来的操作将视我们要配置的数据库系统的不同而有不同的操作,由于我们介绍的主要是基于Access数据库和SQL Server数据库的,所以接下来的两个部分我们讲分别讲述Access数据库系统DSN和SQL Server数据库系统DSN的配置方法。
图1.17 配置系统DSN
(1)Access数据库系统DSN的配置方法
Step1:单击添加后弹出如图1.18所示的对话框,选择数据源为 Driver do Microsoft Access (*.mdb)单击完成。
Step2:这时弹出一个 “ODBC Microsoft Access安装”的对话框,在对话框的数据源名文本输入框中输入配置的DSN文件名,如果test_dsn然后单击 “选择”按钮。如图1.19所示。
Step3:这时将弹出一个如图1.20所示的对话框,在对话框的数据库名中输入 “c:\test.mdb” (该数据库的建立方法请参看前边的章节),或是从右边的目录浏览器中选择“驱动器C”-> “test.mdb” 。选择数据库完成后,单击确定按钮将回到图1.19的界面。
Step4:单击“确定”,这时出现的界面如图1.21所示,请注意,这时在系统数据源列表框中出现了“test_dsn” 项。Access数据库系统DSN配置完成。
图1.18 选择配置Access数据库DSN
图1.20 选择Access数据库
图1.21 完成对test.mdb数据库系统DSN的配置
Word教程网 | Excel教程网 | Dreamweaver教程网 | Fireworks教程网 | PPT教程网 | FLASH教程网 | PS教程网 |
HTML教程网 | DIV CSS教程网 | FLASH AS教程网 | ACCESS教程网 | SQL SERVER教程网 | C语言教程网 | JAVASCRIPT教程网 |
ASP教程网 | ASP.NET教程网 | CorelDraw教程网 |