(2)Recordset对象。Recordset对象代表一个记录集,这个记录集是一个已连接的数据库中的表,或者是Command对象的执行结果返回的记录集。在ADO对象模型中,是在行中检查和修改数据的最主要的方法,所有对数据的操作几乎都是在Recordset对象中完成的。Recordset对象用于指定行,移动行,添加,更改,删除记录。
(3)Command对象。在建立Connection后,可以发出命令操作数据源。一般情况下,Command对象可以在数据库中添加,删除或更新数据,或者在表中进行数据查询。Command对象在定义查询参数或执行一个有输出参数的存储过程时非常有用。 下面就具体地说说如何用ADO存取数据:
在实际编程过程中使用ADO的一个典型的存取数据的步骤为:
(1)连接数据源 (2)打开记录集 (3)使用记录集 (4)断开连接。 具体的用法如下所述:
(1)连接数据源。利用Connection对象可以创建一个数据源的连接。应用的方法是Connection对象的Open方法。
(2) 打开记录集。实际上记录集返回的是一个从数据库取回的查询结果集。因此他有两种打开方法:一种使用记录集的Open方法,另一种是用Connection对象的Execute方法。
(3) 使用记录集。具体有以下几种操作:
(a) 加新的记录:在ADO中添加新的记录用的方法为:AddNew。在用完
AddNew方法为记录集添加新的记录后,应使用UpDate将所添加的数据存储到数据库中。
(b) 修改记录集:其实修改核对记录集中的数据和重新赋值没有什么太大
的区别,只要用SQL语句将要修改的字段中的一个数据找出来重新赋值就可以了。
(c) 删除记录:在ADO中删除记录集中的数据的方法为:Delete方法,这与
DAO对象的方法相同,但是在ADO中它的能力增强了,可以删除掉一组
18
记录了。
(d) 查询记录:在ADO中查询的方法很灵活,有几种查询的方法: ① 使用连接对象的Execute方法执行SQL命令,返回查询记录集。 ② 使用Command对象的Execute方法执行CommandText属性中设置的SQL命令,返回查询记录集。
(4) 断开连接。在应用程序结束之前,应该释放分配给ADO对象的资源,操作系统回收这些资源并可以再分配给其他应用程序。使用的方法为Close方法。 §4.2功能模块的实现 §4.2.1用户模块的实现
本模块输入输出包括:
用户注册:输入用户名、密码等。 用户登陆:输入用户名、密码。 输出包括:输出密码、输出用户名等。
图4.1用户注册模块流程图
是否可以预Y ID是否与数据库中ID重复 N 填写、确认用户密码 填写用户ID 主窗体 用户注册 19
§4.2.2查询模块的实现
本模块输入:输入查询关键字,选择查询类型和方式。 本模块输出:输出检索的相关结果。
例如:按景点名称进行模糊查询,在关键字文本框中,输入与你查询的片名相关的字段,就会检索出景点库中所有包括你输入字段的信息。如输入“沈阳”检索结果包括片名为“..沈阳..”的景点信息。按地址进行精确查询,在关键字文本框中,输入与你检索的景点地理位置,就会检索出景点库中与你输入字段完全匹配的景点信息。
主窗体 用户注册 酒店查询 景点/酒店复合查询 查询条件 景点查询 查询条件 N N 找到记录 找到记录 Y 显示 显示 是否可以返回
图4.2用户查询模块流程图
§4.2.3在线留言模块的实现
本模块输入:用户名,密码,留言主题,留言内容等。 本模块输出:留言时间,留言者,留言主题,留言内容等。
20
用户留言则必须先登陆,若没有登陆则要求返回denglu.asp进行登陆。
主窗体 留言簿 留言 留言/查看留言 查看留言 输入留言 查看留言 N 是否允许留言 Y 填写留言信息 显示留言 返回
图4.3用户留言模块流程图
§4.2.4酒店预定模块的实现
用户如果要预定酒店则首先登陆系统并且选择酒店后才可以预定。
21
主窗体 预定系统 是否可以预定 N Y 选择预定 返回
图4.4用户酒店预定模块流程图
§4.2.5后台管理模块的实现
管理人员登陆系统后可以对整个系统进行管理,包括:用户管理,旅行社管理,酒店管理,景点管理,新闻管理,预定管理和留言管理等。
用户管理:管理员可以对用户名进行删除和查看,用户密码采用加密措施,管理员将不能查看原密码。
旅行社管理:管理员可以对旅行社进行删除、修改和添加。 酒店管理:管理人员可以对酒店信息进行删除、修改和添加。 景点管理:管理员可以对景点信息进行删除、修改和添加。 新闻管理:管理员可以对新闻信息进行删除、修改和添加。 预定管理:管理员可以对预定信息进行删除和查看。 留言管理:管理员可以对留言信息进行删除和查看。 §4.3动态旅游网站的实现
动态网站的通常都有较大的伸缩性,网站规模可大可小,各项功能也可分期逐步实现。因此,可按照功能的轻重缓急先实现比较重要的功能,然后在现有系统的基础上再
22