欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

asp实现批量录入数据的实现

程序员文章站 2023-11-07 12:06:28
批量录入在数据库的应用中比较广泛的,关于批量录入的方法也有好多种。下面我就结合我实际中的应用,谈一下儿我是怎么实现的。主要用到的是form的集合的概念,通过循环取的所有的集...
批量录入在数据库的应用中比较广泛的,关于批量录入的方法也有好多种。下面我就结合我实际中的应用,谈一下儿我是怎么实现的。主要用到的是form的集合的概念,通过循环取的所有的集合内数据。考虑到大家看着方便,我把它集成到了一个页面。 

下面是具体的代码:  
batchinput.asp 
<% 
'##################################### 
'file function:批量录入数据 
'author:myhon 
'date:2003-8-19 
'##################################### 
'向数据库写入数据 
sub writedata() 
dim reccnt,i 
dim fieldname1,fieldname2,fieldname3 
dim conn 
dim sqlstr,connstr 
connstr="provider=sqloledb.1;initial catalog=mydatabase;data source=myhon;user id=sa;password=" 
set conn=server.createobject("adodb.connection") 
conn.open connstr '建立数据库连接 
reccnt=request.form("stu_num").count '取得共有多少条记录 
'批量录入数据 
for i=1 to reccnt 
fieldname1=trim(request.form("fieldname1")(i)) 
fieldname2=trim(request.form("fieldname2")(i)) 
fieldname3=trim(request.form("fieldname3")(i)) 
sqlstr="insert into mytable(fieldname1,fieldname2,fieldname3) values('" 
sqlstr=sqlstr & fieldname1 & "','" 
sqlstr=sqlstr & fieldname2 & "','" 
sqlstr=sqlstr & fieldname3 & "')" 
'response.write sqlstr 
conn.execute(sqlstr) 
next 
end sub 
'显示成批录入的界面 
sub inputdata() 
dim reccnt,i 
%> 
<form name="bathinputdata" action="" method="post"> 
<%  
reccnt=cint(request.form("reccnt")) 
for i=1 to reccnt 
%> 
<input type="text" name="fieldname1"> 
<input type="text" name="fieldname2"> 
<input type="text" name="fieldname3"> 
<% 
next 
%> 
<br> 
<input type="submit" name="action" value="提交"> 
</form> 
<% 
end sub 
'指定要批量录入多少条记录 
sub assignhowmuch() 
%> 
<!------指定要录入多少条记录--------------> 
<form name="form1" action="" method="post"> 
您要录入的记录的条数:<input type="text" name="reccnt"> 
<input type="submit" name="action" value="下一步>>"> 
</form> 
<% 
end sub 
if request.form("action")="下一步>>" then 
call inputdata() '显示成批录入界面 
elseif request.form("action")="提交" then call writedata() '向数据库批量写入数据 
else 
call assignhowmuch() '显示指定录入多少条记录的界面 
end if 
%>