前言:
现在同学们对“asp复制文件”大约比较讲究,大家都想要学习一些“asp复制文件”的相关内容。那么小编也在网络上网罗了一些对于“asp复制文件””的相关文章,希望小伙伴们能喜欢,同学们快快来学习一下吧!上一节主介绍了数据库内部表的格式设定及其注意事项,在最后向大家提供了2张图片,分别是存储导入数据的表的格式和存储数据后表的内容图片。下面首先简要介绍该数据库表内主要字段的存储格式及内容说明。
0. project_code:项目代码
1. unitproject_code:单位工程代码
2. project_name:项目名称
3. unitproject_name:单位工程名称
4. subproject_code:单项工程代码
5. subproject_name:单项工程名称
6. material_code:物资代码
7. material_name:物资名称
8. unit:单位
9. num:数量
10. price:价格
下图所示,是需要导入数据的电子表格模板。
其中:
①是项目编码
②是项目名称
③物资编码
④物资名称
⑤物资计量单位
⑥物资的数量
⑦物资的价格
下图是在模板上填写的要导入的数据。
说明:
上图所示的项目编码,实际使用时应按规则输入位数是12位,该示例为方便,仅填写6位。12位编码按不同位的数字表示不同的项目代码,如单位工作,单项工作和工序过程等,这是在编程设计之前就设定好的。
上图所示的项目名称,用“_”号分开成三段,按不同项目名称由ASP脚本区分开来,写入不同的数据表的字段中。详细的见下面的源代码。
下图是导入数据后的数据库表。
ASP实现写入功能在操作上需要分两步:
第一步利用ASP脚本将Excel文件数据读入,并存储到服务器的相应位置,形成一个新的Excel电子表格文件,与上传选中的电子表格文件一模一样;
第二步利用ASP脚本将这个新上传的Excel电子表格文件的内容逐行读出并写入到对应的数据库表中。
这两步由下面的代码实现,下面给出了导入数据ASP文件的原代码,仅供有兴趣的朋友参考:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<!--#include file="upload_5xsoft.inc"-->
<!--#include file="conn.asp"-->
<!--#include file="checkuser.asp"-->
<html xmlns="">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>EXECL数据导入</title>
<style type="text/css">
<!--
body,td,th {
font-size: 12px;
color: #666666;
}
-->
</style>
</head>
<body>
<%
session.CodePage=936
Server.ScriptTimeOut=12000
set upload=new upload_5xsoft
set file=upload.file("file1")
if file.fileSize>20480000 then '200K
%>
<script>
alert("您选择的文件过大!");
window.close();
</script>
<%
response.end
end if
if file.fileSize>0 and file.fileSize<20480000 then
filename=year(now)&month(now)&day(now)&hour(now)&minute(now)&second(now)
filename=filename+"."
filenameend=file.filename
filenameend=split(filenameend,".")
if filenameend(1)="xls" then
filename=filename&filenameend(1)
file.saveAs Server.mappath("uploadfile/"&filename)
else
response.write "数据格式不对!"
response.write "<a href=upload.asp>返回</a>"
response.end()
end if
set file=nothing
else
response.write "文件不能为空或者文件超过大,超过系统限制!"
response.write "<a href=upload.asp>返回</a>"
response.end()
End if
set upload=nothing
'上传XLS文件结束,下面从上传的XLS文件中读取数据写入到SQL数据库
strAddr=server.MapPath("uploadfile/"&filename)
set excelconn=server.createobject("adodb.connection")
excelconn.open "Provider = Microsoft.Jet.OLEDB.4.0 ; Data Source = "+strAddr+";Extended Properties='Excel 8.0;HDR=NO;IMEX=1'"
sql="select * from [Sheet1$] "
set rs0=server.CreateObject("adodb.recordset")
rs0.open sql,excelconn,1,1
set rs=server.CreateObject("adodb.recordset")
set rs1=server.CreateObject("adodb.recordset")
sql="select * from [Sheet1$]"
rs.open sql,excelconn,1,1
if not(rs.bof and rs.eof) then
rs.movenext
do while not rs.eof
sql1="select * from [Yyf_Material] where id is null"
rs1.open sql1,conn,1,3
rs1.addnew
rs1("project_code")=rs(0)
rs1("unitproject_code")=left(rs(0),4)
project_name=rs(1)
names=Split(project_name,"_")
rs1("project_name")=names(0)
rs1("unitproject_name")=names(1)
rs1("subproject_name")=names(2)
rs1("subproject_Code")=left(rs(0),6)
rs1("material_Code")=rs(2)
rs1("material_name")=rs(3)
rs1("unit")=rs(4)
rs1("num")=formatnumber(rs(5),3)
rs1("price")=formatnumber(rs(6),2)
rs1("switch")=true
rs1.update
rs1.close
rs.movenext
loop
end if
rs.close()
set rs=nothing
set rs1=nothing
excelconn.Close()
set excelconn=nothing
conn.close()
set conn=nothing
%>
<script>
alert("数据导入成功!");
window.parent.document.location.reload();
history.back();
</script>
</body>
</html>
这部分代码已经过测试,或者说现在正在使用,没有做任何技术处理。若需要交流,请关注,在评论区进行互动。
最后欢迎大家多提宝贵意见,以共同提高。
ASP脚本设计虽然古老,但仍然在广泛使用,尤其是小型系统,流量要求不高,但可实现相应功能的应用程序,尤其是小型企业,最为适用。比如说我设计的《生产经营管理信息系统》,就涵盖了物资管理的所有应用,包括入库,出库,经营分析与统计,形成报表,导入、导出数据,能为企业管理者提供相应的所有物耗数据。
计算机语言在飞速发展,可能我们永远也跟不上先进的,我认为我的学习是适用,学以至用即可。同时ASP简单易学,门槛低,如同当年的Basic语言一样,也可做为学习其它更流行语言的基础,也未偿不是一个好的途径。
下面几节,将着重介绍数据的导出操作并给出实现该功能的脚本源码。
标签: #asp复制文件