版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第25章 使用ASP开发数据库项目,前面介绍ADO.NET的时候曾经提到过多种数据访问方式,由于ASP还出现在ADO.NET之前,所以ASP.NET不能使用这种先进的数据访问方式。ASP通过ADO组件,使开发人员可以编写紧凑简明的脚本,来连接ODBC(Open Database Connectivity)兼容的数据库和OLE DB兼容的数据源。,25.1 创建DSN文件并连接数据库,ADO通过访问相应的数据库驱动程序来访问数据库。在数据库驱动程序中,可以使用DSN(Data Source Name)来定位和标识特定的ODBC兼容数据库,DSN一般包含有数据库配置、访问者权限、数据库定位等信息,
2、同时还可以通过DSN获取Windows注册表中或文本文件中的表格。,25.1.1 创建文件DSN,在调用ADO组件访问数据库之前,先创建相应的ODBC DSN文件,以便于将信息从Web应用程序和数据库之间的通信。通过Windows提供的ODBC数据源管理器,可以创建下列3种DSN。 用户DSN。 系统DSN。 文件DSN。,25.1.2 连接数据库,要访问数据库,首先必须建立和数据库的连接。ADO组件提供了Connection对象,来帮助设计者建立并管理应用程序和ODBC数据库之间的连接。通过Connection对象所提供的各种属性和方法,设计者可以打开、关闭数据库,还可以向数据库发送查询请求
3、来更新站点信息。,25.2 ASP操作数据的对象,ASP提供了三个主要用来操作数据库的对象:Connection、Recordset和Command对象。本节认识这几个对象,并学习它们的应用方法和技巧。,25.2.1 用Connection对象执行查询,通过调用Connection对象的Execute方法,设计者可以向数据库发送SQL(Struct Query Language,结构化查询语言)指令,以完成查询和检索所需记录的操作。 说明:SQL是用于与数据库通讯的一种工业标准语言,其可以用来检索和更新信息。,25.2.2 使用Recordset对象处理结果,为了实现更加精细的检索、更改操作,
4、ADO提供了Recordset对象。该对象设置了一个记录指针,来记录数据库表中当前记录的位置。通过设置对象的指针类型属性,设计者可以实现记录的滚动、更改、准确定位等操作。 在Web站点创作过程中,设计者常使用Connection对象来建立数据库连接,之后采用Recordset对象来处理处理返回的数据。通过综合使用这两个对象,设计者可以开发出绝大多数数据库应用程序。,25.2.3 用Command对象改善查询,ADO提供的Command对象,同样也可以执行查询操作。与Connection和Recordset对象不同之处在于,该对象可以直接在数据库源上准备、编译查询(例如通过调用存储过程来执行查询
5、),并可使用不同的参数来执行查询操作,从而可以最大限度地减少重复修改查询所需的时间。,25.2.4 结合HTML表单和数据库访问,当访问者在包含HTML表单的Web页中提交相关信息,希望对远程数据库执行查询操作时,设计者可以通过ASP的Request对象来获取HTML表单中的相关信息,之后在脚本命令中将其合并到SQL语句中,然后通过调用ADO组件的适当对象,即可实现远程数据库的查询操作。,25.3 管理数据库连接,对于一个Web数据库应用程序而言,对数据库连接的合理管理,是应用程序能够稳定运行的关键所在。一个数据库在打开并处于保持连接的情况下,即使不传输任何信息,也会耗费较大的数据库服务器资源
6、。当一个Web数据库应用程序面对成千上万的访问者时,如果不处理好连接问题,将很容易导致网络堵塞,致使应用程序无法正常运行。设计者可以通过使连接超时、共享连接、使用跨页连接和关闭连接等方式,来合理管理数据库连接。,25.3.1 使连接超时,如果一个数据库服务器面临的信息传输任务过多,将致使建立数据库连接的时间增加,从而使得服务器运行缓慢、性能降低。,25.3.2 共享连接,每一次建立和中断连接,都将耗费数据库服务器资源,因此经常性建立和中断与数据库的连接,也会导致数据库服务器性能的降低。ASP中通过使用ODBC 3.5提供的共享特性,有效地避免了这一问题的发生。ODBC提供的共享特性能够维持所打
7、开的数据库连接,并允许不同的访问者来共享此连接,以减少空闲连接的数量,从而提高服务器性能。数据库服务器设置了一个连接池来管理数据库连接。当访问者向数据库服务器发出连接请求后,数据库服务器将首先检查连接池中是否存在有空闲的连接。如果存在,则连接池将返回连接,而不是重新建立一个数据库连接。,25.3.3 使用跨页连接,所谓跨页连接,是指在两个以上的页面中,要使用同一个数据库连接。此时,可以使用ASP的Application对象来存储该数据库连接,在需要连接的页面中通过读取Application对象来获取数据库连接。使用此方法,虽然能够解决问题,但由于数据库连接在整个应用程序范围内都保持打开状态,既影响了数据库服务器的性能,也没有充分利用服务器的连接池。,25.3.4 关闭连接,连接池的容量是有限的,如果数据库连接已经不再需要,就应该尽快地将其关闭。关闭连接,将减少对数据库服务器的请求,是其他的访问者能够使用该连接。默认情况下,在脚本执行完毕后,脚本中涉及的连接将被自动终止。,25.4 小结,本章通过介绍ASP的各个对象,介绍了ASP中连接数据库和操作数
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年4月重庆市万州区双河口街道办事处公益性岗位招聘2人备考题库含答案详解(综合题)
- 2026浙江工业职业技术学院招聘4人备考题库(第二批)含答案详解(轻巧夺冠)
- 2026江苏省住房和城乡建设厅直属事业单位江苏省城乡发展研究中心招聘高层次人才备考题库含答案详解(预热题)
- 2026海南琼海市妇女联合会公益性岗位招聘1人备考题库含答案详解(满分必刷)
- 2026陕西榆林中科洁净能源创新研究院职能部门招聘4人备考题库附答案详解(综合题)
- 2026广西柳州柳城县中医医院招聘19人备考题库及答案详解(有一套)
- 2026甘肃平凉市第三批市直单位公益性岗位工作人员招聘23人备考题库参考答案详解
- 2026浙江台州科技职业学院编外工作人员招聘4人备考题库含答案详解(典型题)
- 2026河南郑州市公园广场事务中心公益性岗位招聘135人备考题库含答案详解(夺分金卷)
- 2026河南漯河市中心医院(高水平医院) 引进招聘12人备考题库附答案详解(预热题)
- 2026国新控股(重庆)有限公司招聘建设笔试备考题库及答案解析
- 2026年湖南省新高考教学教研联盟(长郡二十校联盟)高三语文4月第二次联考(含参考答案)
- 2026年统编版小学二年级道德与法治下册每课教学设计(含目录)
- 决胜未来:中美六大未来产业演进图景
- 新时代廉洁文化建设三年行动计划(2026-2028年)
- DB44∕T 2792-2025 城镇内涝风险评估与治理技术标准
- Unit5Nature'sTemper(第3课时)SectionA4a-4d课件人教版英语八年级下册
- 创建鲁班奖工程实施指南
- 2025版建筑工程建筑面积计算规范
- 2026年顺德职业技术学院单招职业倾向性考试题库及答案详解一套
- 5.3民族区域自治制度 课件 2025-2026学年统编版道德与法治八年级下册
评论
0/150
提交评论