注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

宝贝小屋

生活 工作 学习

 
 
 

日志

 
 

asp 导excel入acess数据库(先上传文件)  

2008-01-20 16:42:45|  分类: 电脑知识 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
<!--#include file="inc/conn.asp"-->
<%
Response.Buffer = true
checkvalid 3
dim action
action=Request.QueryString("action")
if action="start" then
        filePath=Request.Form("datafile")
        if isNull(filePath) or isEmpty(filePath) then
                Response.Write("<script>alert('先上传要导入的文件!');</script>")
        else
                SwitchExcelInfo(filePath)
        end if
        Response.End()
end if

Function SwitchExcelInfo(xlsFileName)
'on Error Resume Next
Server.ScriptTimeout=1000000000
Dim xlsStr
Dim rs
Dim i,j,k
Dim ExcelConn
Dim ExcelFile
Dim objExcelApp
Dim objExcelBook
Dim bgColor
Dim Er

Er = False
xlsStr = ""

If xlsFileName = "" Then
    Er = True
End If

If Er = False AND UCase(Mid(xlsFileName, InStrRev(xlsFileName, ".")+1, 3))<>"XLS" Then
    Er = False
End If

If Er = False Then

        ExeclFile = Server.MapPath(xlsFileName)

        'Set bjExcelApp = CreateObject("Excel.Application")
'        objExcelApp.Quit
        Set bjExcelApp = CreateObject("Excel.Application")
        'objExcelApp.Quit
        objExcelApp.DisplayAlerts = false '不显示警告
        objExcelApp.Application.Visible = false '不显示界面
        objExcelApp.WorkBooks.Open(ExeclFile)
        set bjExcelBook = objExcelApp.ActiveWorkBook
        reDim arrSheets(objExcelBook.Sheets.Count)
        For i=1 to objExcelBook.Sheets.Count
        arrSheets(i) = objExcelBook.Sheets(i).Name
        Next
        objExcelApp.Quit
        Set bjExeclApp=nothing
       
        Set ExcelConn = Server.CreateObject("ADODB.Connection")       
        'ExcelDriver = "DBQ="&ExeclFile&";DefaultDir=;DRIVER={Microsoft Excel Driver (*.xls)};HDR=Yes;IMEX=2;"
        ExcelDriver="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&ExeclFile&";Extended Properties=""Excel 8.0;HDR=Yes;IMEX=2"""
        ExcelConn.Open ExcelDriver
        Set rs = Server.CreateObject("Adodb.RecordSet")
        Sql = "SELECT * FROM ["& arrSheets(1) &"$]"
        rs.Open Sql,ExcelConn,1,1
        Response.Write("开始导入......<br>")
        Response.Flush()
        j=0
        do While Not rs.eof
        if not IsNull(rs(0)) and not isempty(rs(0)) and isnumeric(rs(0)) then
                Set Rs_Insert=Server.CreateObject("ADODB.RecordSet")
                Sql_Insert="Select * from restaurant where shopname='"&rs(1)&"'"
                Rs_Insert.Open Sql_Insert, Conn, 1, 3
                if Rs_Insert.eof then
                        Rs_Insert.AddNew
                        Rs_Insert("shopname")=fitilerchar(rs(1))                       
                        Rs_Insert("caixi")         =getCaixiID(rs(2))
                        Rs_Insert("star")    =fitilerchar(rs(3))
                        Rs_Insert("provice") =getAreaID(rs(4))
                        Rs_Insert("city")         =getAreaID(rs(5))
                        Rs_Insert("country")=getAreaID(rs(6))
                        Rs_Insert("zhekou")  =fitilerchar(rs(7))
                        Rs_Insert("renjun")  =fitilerchar(rs(8))                                               
                        Rs_Insert("tel1")    =""&fitilerchar(rs(9))       
                        Rs_Insert("tel2")    =fitilerchar(rs(10))                       
                        Rs_Insert("addr")    =fitilerchar(rs(11))
                        Rs_Insert("keyName") =fitilerchar(rs(12))
                        Rs_Insert("addtime") =cDate1(fitilerchar(rs(13)))
                        Rs_Insert("customer")=fitilerchar(rs(14))
                        Rs_Insert.Update
                        j=j+1
                        Response.Write("第"&j&"条数据库导入成功.....<br>")
                        Response.Flush()
                end if
                Rs_Insert.Close
                Set Rs_Insert=Nothing               
        else
                exit do       
        end if       
        rs.movenext
        Loop
        rs.Close
        ExcelConn.Close
        Set ExcelConn = Nothing
        Response.Write("导入完毕, 共 "&j&" 条数据导入成功.....<br>")
        Response.Flush()
End If
SwitchExcelInfo = xlsStr
End Function

function cDate1(cdatestr)
        on error resume next
        returnvalue=cdate(cdatestr)
        if err.number<>0 then
                returnvalue=now()
        end if
        cDate1        = returnvalue
end function
function fitilerchar(str)
        if isEmpty(str) or isNull(str) then
                fitilerchar=""
                exit function
        end if
        str=trim(str)       
        fitilerchar=replace(str, chr(64), "")
        for i=1 to len(fitilerchar)       
                if asc(mid(fitilerchar, i, 1))<>63 and asc(mid(fitilerchar, i, 1))<>39 then
                        returnValue=returnValue&mid(fitilerchar, i, 1)
                end if               
        next
        fitilerchar=returnValue
end function
function getAreaID(cName)
        if isEmpty(cName) or isNull(cName) then
                getAreaID=0
                exit function
        end if
        cName=replace(cName, "'", "")       
        Sql="select ClassID from area where ClassName='"&cName&"'"
        Set rs=Server.CreateObject("Adodb.RecordSet")
        rs.Open Sql, conn
        if rs.eof then
                getAreaID = 0
        else
                getAreaID = rs(0)
        end if
end function

function getCaixiID(CaixiName)
        if isEmpty(CaixiName) or isNull(CaixiName) then
                getCaixiID=0
                exit function
        end if
        CaixiName=replace(CaixiName, "'", "")
        dim CaixiNameArr
        CaixiNameArr=Split(CaixiName, "/")
        CaixiName=CaixiNameArr(Ubound(CaixiNameArr))
        Sql="select ID from caixi where name='"&CaixiName&"'"
        Set rs=Server.CreateObject("Adodb.RecordSet")
        rs.Open Sql, conn
        if rs.eof then
                getCaixiID=0
        else
                getCaixiID=rs(0)
        end if
end function
%>
<html><head><title>添加信息</title>
<meta. http-equiv="Content-Type" content="text/html; charset=gb2312">
<link href="css/style.css" rel="stylesheet" type="text/css">
<SCRIPT. language=#>
       
        function chkSubmit()
        {
                        if (document.myform.leixing.value=="")
                        {
                                alert("请选择卡号类型!");
                                document.myform.leixing.focus();
                                return false;
                        }

                        if (document.myform.kahao.value=="")
                        {
                                alert("请填写卡号");
                                document.myform.kahao.focus();
                                return false;
                        }

                        if (document.myform.password.value=="")
                        {
                                alert("请填写卡号密码");
                                document.myform.password.focus();
                                return false;
                        }
               
                return true;
        }
</SCRIPT>
</head>
<body>
<form. method="post" name="form1" id="form1"  action="?action=start">
  <table width="90%" border="0" align="center" cellpadding="0" cellspacing="1" >
    <tr>
      <td height="25" colspan="2" align="center" background="images/admin_bg_1.gif" >成批导入餐馆</td>
    </tr>
   
    <tr align="left">
      <td width="303" align="right" >上传数据文件:</td>
      <td width="396" height="25" ><input name="datafile" type="text" id="datafile">
      <input name="Submit" type="button" value="上传文件..." nClick="window.open('situjiaduotu.asp?formname=form1&editname=datafile&uppath=/UploadFile/respi&filelx=xls','','status=no,scrollbars=no,top=20,left=110,width=420,height=165')">
      <font color="#FF0000"> (导入文件格式为Excel)</font></td>
    </tr>
    <tr align="left">
      <td align="right" > </td>
      <td height="25" ><input name="submit" type="submit" id="submit" value="确定导入"></td>
    </tr>
  </table>
</form>
<br>
</body>
</html>
  评论这张
 
阅读(72)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017