一、 利用asp和ado实现数据库操作的工作流程xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
asp内嵌了五个对象resquest、response、server、seesion、application,实现信息的获取、传送及保存等。ado的主要对象有connection、command、recordset等。利用ado的connection 对象和odbc的设定,可以建立与多种数据库(informix、oracle、access等)的连接,从而实现数据的输入、查询、更新等操作。首先,利用asp的server对象的createobject方法创建一个ado的对象实例,以ado的connection对象建立相应数据库与应用程序之间的联接;接着,通过command对象将数据请求的sql(standard query language)标准描述语句指定到command对象的属性,然后执行数据库的输入、查询等操作;最后,数据库服务器将响应的数据结果存储到recordset对象,在服务器端的脚本语言环境中就可以加以处理、分析、显示数据于客户端浏览器上。
二、 实现数据输入、查询的实例
公司的分支机构众多、分布广泛,上级机构经常要对各基层机构的业务数据进行汇总,统计。以前主要是通过电话上报数据,然后手工汇总、统计,编制成报表。随着公司内部的联网,就可以将网络技术和数据库技术结合,将数据的汇总、统计实现自动化。以下将结合公司的实际,通过与informix数据库的连接实现此功能:
1.创建数据库
在unix操作系统上创建一个用于数据汇总、统计的数据库,将数据库命名为cxdb,在此数据库上创建如下表:
create table test
(
br char(6), #单位代码
dt date, #日期
sco money,#业绩
)
2. 连接数据库
在windows98操作系统上,安装数据库连接驱动程序informix-cli,并运行informix-cli的se.net32进行配置,然后运行ilogin 32 demo 测试配置是否正确。确认配置成功后,就可以对web数据库实现各种操作了。在网页中加入如下语句,就能对unix端的数据库进行连接:
set con=server.createobject(“adodb.connection”)
con.open “driver={informix-cli 2.5 (32bit)};database=cxdb;server=11.32.65.45;uid=;pwd=”
其中,driver是数据库的连接驱动程序,其字符串要与odbc驱动程序中的名称保持一致;database是数据库名称;server是数据库服务器主机的ip地址或名称,如果为名称则必须编辑hosts文件;uid是为用户名称;pwd为口令。
3.实现数据的输入、查询
为实现对数据的输入、查询功能,必须创建一个带有form表单的文件,用来接受用户的数据输入及查询条件,利用post方法将form表单的数据提交给服务器进行处理。
编辑接受用户输入的文件input.asp,由用户输入“单位”、“日期”、“业绩“,当用户点击提交按钮时,通过post方法将刚才输入的数据发送web服务器,并执行todb.asp文件在数据库cxdb中增加一条记录。其中,input.asp和todb.asp的源代码如下:
input.asp:
<html>
<head>
<title>输入数据</title>
</head>
<body>
<form method="post" action="todb.asp">
<p>单位:<input type="text" name="t1" size="20">
<p>日期:<input type="text" name="t2" size="20">
<p>业绩:<input type="text" name="t3" size="20">
<p><input type="submit" value="提交" name="b1">
<input type="reset" value="重写" name="b2">
</form>
</body>
</html>
todb.asp:
<% br=request.form("t1")
dt=request.form("t2")
sc=request.form("t3") ‘将input.asp表单中的数据取出到变量br,dt,sc中
set con=server.createobject(“adodb.connection”)
con.open “driver={informix-cli 2.5 (32bit)};database=cxdb;server=11.32.65.45;uid=;pwd=”
‘以上两语句为建立ado对象,并连接数据库
sql="insert into test( br,dt,sc) values('"&br&"','"&dt&"','"&sc&"')"
set rs=con.execute(sql) ’执行sql语句将数据增加到数据库中
rs.close
con.close
%>
数据的查询与输入一样的实现,只是执行的sql语句不同,查询执行是的满足用户输入条件的select语句。源代码如下:
indt.asp
<html>
<head>
<title>输入条件</title>
</head>
<body>
<form method="post" action="seldt.asp">
<p>日期:<input type="text" name="t1" size="20">
<p>
<input type="submit" value="提交" name="b1">
<input type="reset" value="重写" name="b2">
</form>
</body>
</html>
seldt.asp
<html>
<head>
<title>执行查询并显示结果</title>
</head>
<body>
<% dt=request.form("t1") ‘将indt.asp表单中的数据取出到变量dt中
set con=server.createobject(“adodb.connection”)
con.open “driver={informix-cli 2.5 (32bit)};database=cxdb;server=11.32.65.45;uid=;pwd=”
‘以上两语句为建立ado对象,并连接数据库
sql="select sco as sm from test where dt=’#”&dt&”#’”
set rs=con.execute(sql) ’执行sql语句从数据库中查找满足条件的数据
if not rs.eof then ‘判断是否有满足条件的数据
do while not rs.eof
response.write dt&” 业绩是: “&rs(“sco”)&”<br>” ‘循环将满足条件的数据显示
rs.movenext
loop
end if
rs.close
con.close ‘关闭连接
%>
</body>
</html>
Java Asp PHP .Net XML C/C++ CGI VB Jsp J2ee J2se J2me EJB Servlet Tomcat Resin Struts Weblogic Eclipse ANT GUI JMS Web servise IDEA Webphere Hibernate Spring Jboss Applet Swing Socket Javamail Perl Ajax P2P 安全 模式 框架 测试 开源 游戏
Windows XP Windows 2000 Windows 2003 Windows Me Windows 9.x Linux UNIX 注册表 操作系统 服务器 应用服务器