文/王汉洲
ASP即Active Server Page,是微软推出的动态Web设计技术,是用于WWW服务的服务器端脚本环境,在站点的Web服务器上解释脚本,可产生并执行动态、交互式、高效率的站点服务器应用程序。
概述
利用ASP,我们可以很容易地把HTML(超文本标记语言)文本、脚本命令及ActiveX组件混合在一起构成ASP页,以此来生成动态网页,创建交互式的Web站点,实现对Web数据库的访问。当用户使用浏览器请求ASP主页时,Web服务器响应,调用ASP引擎来执行ASP文件,并解释其中的脚本语言(JScript或VBScript),通过ODBC连接数据库,由数据库访问组件ADO(ActiveX Data Objects)完成数据库操作,最后ASP生成包含有数据查询结果的HTML主页返回用户端显示。
由于ASP在服务器端运行,运行结果以HTML主页形式返回用户浏览器,用户在客户端浏览器看到的仅仅是ASP页的执行结果所生成的页,而ASP页本身的内容用户在客户端浏览器是看不到的,增加了系统的安全保密性。此外,ASP是面向对象的脚本环境,用户可自行增加ActiveX组件来扩充其功能,拓展应用范围。
ASP访问数据库步骤
在ASP中,可通过以下步骤实现对Web数据库的访问:
1、定义数据源
在Web服务器上打开“控制面板”,选中“ODBC”,在“系统DSN”下选“添加”,选定你希望的数据库种类、名称、位置等。本文定义“SQL Server”,数据源为“HT”,数据库名称为“HTDATA”,脚本语言采用JScript。
2、使用ADO组件查询Web数据库
1)调用Server.CreateObject方法取得“ADODB.Connection”的实例,再使用Open方法打开数据库:
conn = Server.CreateObject("ADODB.Connection")
conn.Open("HT")
2)指定要执行的SQL命令
连接数据库后,可对数据库操作,如查询、修改、删除等,这些都是通过SQL指令来完成的,如要在数据表signaltab中查询代码中含有“X”的记录:
sqlStr = "select * from signaltabswherescode like '%X%'"
rs = conn.Execute(sqlStr)
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:指向第一条记录。
rs.MoveLast:指向最后一条记录。
rs.MovePrev:指向上一条记录。
rs.MoveNext:指向下一条记录。
rs.GetRows:将数据放入数组中。
rs.Properties.Count:ADO的ResultSet或Connection的属性个数。
rs.Properties(item).Name:ADO的ResultSet或Connection的名称。
rs.Properties:ADO的ResultSet或Connection的值。
rs.close():关闭连接。
4)关闭数据库
conn.close()
实例
下面的实例是某技术中心商品查询系统中的Web功能模块开发,系统要求当用户输入查询信息,如:产地或产品类别后,系统能返回查询结果.我们以产品类别为例:catachoi.asp文件利用Form标签形成一个查询入口,当用户选择了某产品类别,并按下“Submit”按钮后,它将产品类别号以ProdName变量的形式送到p_result.asp中,p_result.asp根据ProdName的值,使用SQL语句在服务器端完成数据库表文件的查询,最后将查询结果送回浏览器端。