仓酷云

标题: ASP网页编程之用数组完成数据纪录的批量录进办法 [打印本页]

作者: 逍遥一派    时间: 2015-1-16 22:30
标题: ASP网页编程之用数组完成数据纪录的批量录进办法
Access是一种桌面数据库,只适合数据量少的应用,在处理少量数据和单机访问的数据库时是很好的,效率也很高。但是它的同时访问客户端不能多于4个。access数据库有一定的极限,如果数据达到100M左右,很容易造成服务器iis假死,或者消耗掉服务器的内存导致服务器崩溃。<%
rem文章标题asp中使用数组完成数据库纪录的批量录进办法(原创)
yanek
接洽email:aspboy@263.net
%>

包含两个文件
1。allneeddj.asp:完成表单的天生
2.allneeddjresult.asp处置表单批量录进
3.hbedu.mdb:数据库文件
其数据库布局以下
provinceid:省分编号数值型
dytaocount:打样套数数值型
papertaocount:纸样套数数值型
cpcontent:出片内容数值型
filename:文件名文本型
beizhu:备注备注型

本例子中以10笔记录,每笔记录6个字段申明.

1。allneeddj.asp

<html>

<head>
<metahttp-equiv="Content-Language"content="zh-cn">
<metahttp-equiv="Content-Type"content="text/html;charset=gb2312">
<metaname="GENERATOR"content="MicrosoftFrontPage4.0">
<metaname="ProgId"content="FrontPage.Editor.Document">
<title>需求挂号</title>
</head>

<body>



<%
setconn=server.createobject("adodb.connection")
conn.Open"driver={MicrosoftAccessDriver(*.mdb)};dbq="&_
Server.MapPath("hbedu.mdb")

%>

<formmethod="POST"action="allneeddjresult.asp">
<divalign="center">
<center>
<tableborder="1"width="700"bordercolorlight="#FFFFFF">
<tr>
<tdwidth="660"colspan="6">
<palign="center">需求挂号</td>
</tr>
<tr>
<tdwidth="54"align="center">省分</td>
<tdwidth="66"align="center">打样张数</td>
<tdwidth="66"align="center">纸样张数</td>
<tdwidth="66"align="center">出片内容</td>
<tdwidth="80"align="center">文件名</td>
<tdwidth="328"align="center">
<palign="center">备注</td>
</tr>


<%
rem经由过程轮回静态天生分歧称号表单域
fori=1to10
%>
<%
setrs=server.createobject("adodb.recordset")
sql="select*fromprovinceinfo"
rs.opensql,conn,1,1



setrs1=server.createobject("adodb.recordset")
sql1="select*fromfilename"
rs1.opensql1,conn,1,1
%>


<tr>
<tdwidth="54"><selectname="<%response.write"data1"&i%>"
size="1">
<%
dowhilenotrs.eof
ifprovince=cstr(rs("id"))then
sel="selected"
else
sel=""
endif
response.write"<option"&sel&"value="+CStr(rs("id"))+">"+rs("province")+"</option>"+chr(13)+chr(10)
rs.movenext
loop
setrs=nothing
%></select></td>
<tdwidth="66"><inputtype="text"name="<%response.write"data2"&i%>"size="8"></td>
<tdwidth="66"><inputtype="text"name="<%response.write"data3"&i%>"size="8"></td>
<tdwidth="66"><selectsize="1"name="<%response.write"data4"&i%>">
<optionvalue="1">修改部分</option>
<optionvalue="2">全体内容</option>
</select></td>
<tdwidth="80"><selectname="<%response.write"data5"&i%>"
size="1">
<%
dowhilenotrs1.eof
iffilename=cstr(rs1("filename"))then
sel="selected"
else
sel=""
endif
response.write"<option"&sel&"value="+CStr(rs1("filename"))+">"+rs1("filename")+"</option>"+chr(13)+chr(10)
rs1.movenext
loop

setrs1=nothing
%></select> </td>
<tdwidth="328"><textarearows="2"name="<%response.write"data6"&i%>"cols="46"></textarea></td>
</tr>



<%next%>



<tr>
<tdwidth="660"colspan="6">
<palign="center"><inputtype="submit"value="提交"name="B1"></td>
</tr>
</table>
</center>
</div>
</form>

</body>

</html>

2.allneeddjresult.asp


<%
rem界说二维数组寄存从表单猎取的值
dimdata(10,6)
fori=1to6
forj=1to10
mydata="data"+cstr(i)+cstr(j)
data(j,i)=request.form(mydata)
next
next
%>

<%
rem输入表单输出的值
fori=1to10
forj=1to6

response.writedata(i,j)

next
response.write"<br>"
next

response.end
%>

<%
dimconn,rs
Setconn=Server.CreateObject("ADODB.Connection")
conn.Open"driver={MicrosoftAccessDriver(*.mdb)};dbq="&_
Server.MapPath("hbedu.mdb")


fori=1to10
rem轮回批量进库

Setrs=SERVER.CreateObject("ADODB.Recordset")
rs.Open"hbedu",conn,1,3
rs.AddNew
rs("beizhu")=data(i,6)
rs("filename")=data(i,5)
rs("cpcontent")=data(i,4)
rs("papertaocount")=data(i,3)
rs("dytaocount")=data(i,2)
rs("provinceid")=data(i,1)
rs.Update
rs.close
setrs=nothing

response.write"ok<br>"
next
%>
演示:http://www.zwtd.com/1/yanek/n/needdj2.asp
缺点:安全性不是太差了,还行,只要你充分利用系统自带的工具;唯一缺点就是执行效率慢,如何进行网站优化以后,效果会比较好。
作者: 逍遥一派    时间: 2015-1-19 15:50
代码逻辑混乱,难于管理:由于ASP是脚本语言混合html编程,所以你很难看清代码的逻辑关系,并且随着程序的复杂性增加,使得代码的管理十分困难,甚至超出一个程序员所能达到的管理能力,从而造成出错或这样那样的问题。
作者: 灵魂腐蚀    时间: 2015-1-28 05:25
最近在学asp,不要问我为什么不直接学.net,因为公司网站是asp做的所以有这个需要,卖了本书asp入门到精通,对里面的六大内置对象老是记不住,还有很多属性和方法看的头晕。
作者: 活着的死人    时间: 2015-2-5 14:24
最近在学asp,不要问我为什么不直接学.net,因为公司网站是asp做的所以有这个需要,卖了本书asp入门到精通,对里面的六大内置对象老是记不住,还有很多属性和方法看的头晕。
作者: 仓酷云    时间: 2015-2-12 06:25
不是很难但是英文要有一点基础网上的教程很少有系统的详细的去买书吧,另不用专门学习vb关于vbscript脚本在asp教材都有介绍
作者: 愤怒的大鸟    时间: 2015-3-2 23:26
如何学好ASP,以前也有人问过,把回答给你转过来看看能否对你有帮助:
作者: 柔情似水    时间: 2015-3-11 07:23
学习ASP其实应该上升到如何学习程序设计这种境界,其实学习程序设计又是接受一种编程思想。比如ASP如何学习,你也许在以前的学习中碰到过。以下我仔细给你说几点:
作者: 再见西城    时间: 2015-3-17 23:09
接下来就不能纸上谈兵了,最好的方法其实是实践。实践,只能算是让你掌握语言特性用的。而提倡做实际的Project也不是太好,因为你还没有熟练的能力去综合各种技术,这样只能使你自己越来越迷糊。
作者: 小妖女    时间: 2015-3-25 06:31
没有坚实的理论做基础,那么我们连踏入社会第一步的资本都没有,特别对于计算机专业的学生学好专业知识是置关重要的。在这里我侧重讲一下如何学习ASP,从平时的学习过程中。




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2