ASP与ACCESS数据库建立连接(附源码)._第1页
ASP与ACCESS数据库建立连接(附源码)._第2页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、前言:如何通过ASP与数据库建立连接是一个非常现实的问题,我尽屋写得非常详细。相信看了这篇文章相信您已经能够写出类似的比较简单和实用的程序了。(一)数据库的选择:有许多的数据库你可以选择,SQLSERVER、ACCESS(*.mdb)、EXCEL(*.xls)、FOXPRO(*.dbf)甚至普通的文本文件(*.txt)都可以达到存储数据的功能。那么到底选择什么数据库最合适呢?其中SQLSERVER是服务器级的,足以应付每天上万次的访问量。对于非服务器级的数据库建议使用ACCESS97。因为:(1)只要安装了PWS或HS4肯定有ACCESS的ODEC驱动,即你的系统肓定支持ACCESS数据库的存

2、取。(2)ACCESS支持的SQL指令非常齐全。(3)ACCESSODBC驱动程序的效率非常高。虽然它不是服务器级的数据库,但是作为中小型企业内部网的数据库支持还是绰绰有余的。(4)ACCESS97在OFFICE97中就有,非常方便得到和使用。本文就以ACCESS数据库为准介绍基于WEE的数据库存取方法。(二)例子:我们建立一个“客户”数据库,需要保存如下的客户资料:客户名称、联络人姓名、所在城市、电话号码。(1)首先建立ACCESS数据库customer.mdb(今后有用的)。建立如卜字段:客户名称、联络人姓名、所在城市、电话号码、客户编号、时间。将表保存为”客户”(今后有用的、=看看图)。

3、注意:建立字段时多作了2个(客户编号、时间),因为在今后排序时要用到它们。建议今后做数据库时最好都加上这2项,不会没用的。此外,在保存表时ACCESS会询问是否建立一个住关键字,我们不需要它所以不必建立。还有:时间字段的”默认值”设成"iiowQ",即去系统当时的时间o同时将索引项设成”有(允许重复)”,含义:WEB上极有可能同时存取数据,所以允许重复,索引设成响呵以加快排序速度。=看看图(2)建立递交表单add.htm:源代码如下:例如爱喜T团网(换物网,物物交换网,闲置物品交易网,以物换物)http:/ww.iccluiia.conVaddhtm<litnil&g

4、t;<liead><曲©>添加数据库记录</title><metahttp-equivT=nContent-TypeHcontent=ntext/htinl;chaiset=gb2312M></head><bodvbgcolor=M#FFFFFFH><palign=ncenterH><fontsize=M5">添加数据库记录</16皿></卩><formmetliod=MpostMaction=Madddatabase.aspH><div

5、align=ncenterM><tablewidth=n46%nboidd<U><tdwidth=M28%M><divalign=,lriglit,>公司名称:</div></td><tdwidth=M72%M><iiiputtype=MtextHname=HConipanyNameM></td></tr><u><tdwidth=M28%M><divalign="riglit">联络人姓名:</div><

6、;/td><tdwidth=M72%M><iiiputtype=MtextHname=HCNameH></td></tr><u><tdwidth=M28%M><divalign=,lriglit,>所在城市:</div></td><tdwidth=M72%M><iiiputtype=MtextHname=HCityH></td></tr><u><tdwidth=M28%M><divalign=niight

7、n>电话号码:</div></td><tdwidth=H72%M><iiiputtype=MtextHname=HTer,></td></tr><u><tdwidth=M28%M><divalign=niightn></div></td><tdwidth=H72%M><iiiputtype=MsubniitMname=HSubniitMvalue=HSubniitH><iiiputtype=MresetHname=HresetH

8、value=HResetH></td></tr></table></div></form></bodv></html>这与普通的HTML没有任何区别,关键部分已经用黄色标记了。递交方法用POST,递交后处理的程序是adddatabase.asp(下一步就重点讨论它)。还有就是给每一个项目取一个名字(NAME,后面有用)。(三)关键部分:建立与数据库的联系并将表单中收集到的信息添加到ACCESS数据库中。ASP代码放在和>之间。<%CompanyNaine=Request(HCompanyNam

9、eM)CName=Request(nCNameH)City=Request(HCitvM)Tel=RequesfTel”)以上,首先取得表单中填写的数据,使用ASP的Request对象非常容易可以实现数据的收集。双引号中的就是上一步建立的各个项目的名字(NAME)。所以今后为每个项目起名字是个好习惯,尽管有时候并不一定用得到。这样取得的数据就保存在等号坐侧的变量中了。IfCompanvName=,nOrCName=OrCity=OrTel=,M,Then'Response.Write'htnilxbodyxcenteixfbntsize=5>请将资料填写完整。</f

10、bntx/centeTX/bodvx/html>”JResponse.Reduectnenor.htmnResponse.EndEndIf这里是检测各个项目是否输入了东西,如果为空则不往卞继续执行,显示错误信息。注意:你可以使用两种方法。我都列出了。方法一:使用Response.Write方法写一个出错页面,类似于javasciipts的document.write写法,只是ASP使用Response.Write罢了。方法二:使用Response.Reduect方法导向出错页面enor.htme我在方法一的代码前加上单引号表示注释。(ASP中表示注释用单引号)。setdbcoimecti

11、on=Sen-ei.CREATEOBJECT(nADODB.CONNECTIONH)DBPath=Serv-er.MapPatli(Mcustomer.mdbM)dbcomiection.Open"driver=MicrosoftAccessDiivei(*.mdb);dbq=H&DBPath(1) 建立Connection对象:dbcoiinection,建立一个连接(Connection)/数据库存取的开始。我们使用ASP的内建对象方法Seiver.Createobject建立与数据库的连接。ADODB是ASP的数据库存取组件,不必担心只要有ASP就有它了,是内置的。(2

12、) 使用dbcomiection.open方法打开数据库customer.mdbodriver参数语法:driver=MicrosoftAccessDriver(*.mdb)必须这么写。告诉系统使用ACCESSODBC驱动处理。dbq参数用来指定打开的数据库文件,它必须是完整的路径。例tlUMc:inetpubxrwiootcustomeicustomer.mdbM,我们使用Senrer.MapPath的方法取得数据库的完整路径。Setrs=Seiver.CieateObject(nADODB.RecordsetH)建立Recordset对象rs。Connection仅仅是建立了与数据库间的连

13、接,要存取数据还应该再建立Recordset对彖。is.Open”客户dbcomiection.adOpeiiDyiiamic,3打开数据库中的表”客户”(客户是表名)。语法:rs.open数据表名或SQL指令,已经建立的Connection对彖(这里是dbcoimection),锁定类型rs.AddNewrs(”公司名称”)=CompanyNamets(”联络人姓名J=CNameis(”所在城市n)=Cityts(”电话号码”)=*rs.Update用AddNexv向数据库请求添加数据。最后用Update写入。注意:等号右侧的变量保存着用Request取得的表单数据。双引号内的就是数据库的字

14、段,应该与数据库的一致啊。否则会出错的。这样变量内的数据就写入了数据库对应的字段内了。Response.WriteM<htnil><body><center><fontsize=5>祝贺,您的数据已经添加进数据库了!<p>"Response.WriteM<aluefviewdatabase.asp查看数据Response.Writey/fbM>v/centea</body></html>”写入成功后显示祝贺信息并建立查看数据库记录的连接。%><litnil><lie

15、ad><title></title></head><bodv>J</bodv></htiiil>(三)显示/查看数据库记录:<%setdbcoimection=Sen-er.CREATEOBJECT(nADODB.CONNECTIONH)DBPath=Seiver.MapPatli(Mcustomer.mdbM)dbcomiection.Open"drivei-MicrosoftAccessDiivei(*.mdb);dbq=H&DBPath建立与数据库的连接,与上同。SQL=Hselect*

16、from客户OrderBy时间DESC”SETCustomeiList=dbcoimection.EXECUTE(SQL)%>建立SQL查询语句,表示从”客户”表中查询所有记录,OrderEy时间DESC表示”按时间降序排序,”这样最后添加的信息再最上面显示。下面一句执行SQL查询并将结杲返回给Recordset对彖CustomerListo<litnil><bodv>J<FONTSIZE=M5H><center>数据库记录</center></FONT><CENTER><TABLEBORDER=1

17、><U><td>编号</td><td>公司名称</td><td>联络人姓名</td><td>所在城市</td><td>电话号码</td></tr><%DOWHILENOTCustomerList.EOF%>检测记录是否到了最后一条。EOF表示EndofFile。<TR><TD><%=CustomeiList(H客户编号”)%></TO><TD><%=CustomeiList(H公司名称”)%></TO><TD><%=CustomeiList(H联络人姓名”)%></TD><TD><%=CustomeiList(H所在城市J%x/TD><TD><%=CustomeiList(H电话号码J%><7TD></TR><%=CustomerListC喀户编号”)>可以说是Response.Wnte方法的简写。将”客户编号”字段内的数据写入TD标签间。<%C

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论