Microsoft Office Access是由微軟發(fā)布的關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)。它結(jié)合了 MicrosoftJet Database Engine 和 圖形用戶界面兩項(xiàng)特點(diǎn),是 Microsoft Office 的系統(tǒng)程序之一。Microsoft Office Access是微軟把數(shù)據(jù)庫(kù)引擎的圖形用戶界面和軟件開發(fā)工具結(jié)合在一起的一個(gè)數(shù)據(jù)庫(kù)管理系統(tǒng)。它是微軟OFFICE的一個(gè)成員, 在包括專業(yè)版和更高版本的office版本里面被單獨(dú)出售。2018年9月25日,最新的微軟Office Access 2019在微軟Office 2019里發(fā)布。 asp代碼實(shí)現(xiàn)access數(shù)據(jù)導(dǎo)出到excel文件:
一,下面是導(dǎo)出XLS格式
<%
dim referer
referer = Request.ServerVariables("HTTP_REFERER")
Dim CName,action
action=request.Form("action")
CName="../../Excel/"
dim daytime
’daytime=year(now())&"-"&month(now())&"-"&day(now())&"-"&hour(now())&"-"&Minute(now())
daytime=year(now())&"年"&month(now())&"月"&day(now())&"日"&hour(now())&"時(shí)"
Set rs = Server.CreateObject("ADODB.Recordset")
’--從數(shù)據(jù)庫(kù)中把你想放到EXCEL中的數(shù)據(jù)查出來(lái)
sql="select * from gbook order by id desc"
rs.Open sql,conn
if rs.EOF and rs.BOF then
response.write "<script>alert(’操作出錯(cuò),下面是產(chǎn)生錯(cuò)誤的可能原因:nn庫(kù)里暫時(shí)沒(méi)有數(shù)據(jù),所以不能導(dǎo)出EXCEL文件!’);location.href = ’"&referer&"’;</script>"
response.end
else
dim filename,fs,myfile,x
Set fs = server.CreateObject("scripting.filesystemobject")
’--假設(shè)你想讓生成的EXCEL文件做如下的存放
filename = Server.MapPath(""&CName&""&daytime&".xls")
’--如果原來(lái)的EXCEL文件存在的話刪除它
if fs.FileExists(filename) then
fs.DeleteFile(filename)
end if
’--創(chuàng)建EXCEL文件
set myfile = fs.CreateTextFile(filename,true)
dim strLine,responsestr
strLine=""
For each x in rs.fields
strLine= strLine & x.name & chr(9)
Next
’--將表的列名先寫入EXCEL
myfile.writeline strLine
Do while Not rs.EOF
strLine=""
for each x in rs.Fields
strLine= strLine & x.value & chr(9)
next
’--將表的數(shù)據(jù)寫入EXCEL
myfile.writeline strLine
rs.MoveNext
loop
rs.Close
set rs = nothing
conn.close
set conn = nothing
set myfile = nothing
Set fs=Nothing
Response.Write "<BR><BR><center><b>導(dǎo)出成功,請(qǐng)選擇繼續(xù)操作</b></center>"
Response.Write "<br>"
response.Write "<table width=90% cellspacing=1 cellpadding=3 align=center>"
Response.Write "<tr align=center> <td>"
response.write ("<font color=green>√</font><a href=’"&CName&""&ENames&".xls’>下載</a>") & " <font color= green>√</font><a href=’"&referer&"’>返回</a>"
Response.Write "</td></tr></table>"
end if
%> |
二,下面是導(dǎo)出CSV格式
<%
dim referer
referer = Request.ServerVariables("HTTP_REFERER")
Dim CName,action
action=request.Form("action")
CName="../../Excel/"
dim daytime
’daytime=year(now())&"-"&month(now())&"-"&day(now())&"-"&hour(now())&"-"&Minute(now())
daytime=year(now())&"年"&month(now())&"月"&day(now())&"日"&hour(now())&"時(shí)"
Set rs = Server.CreateObject("ADODB.Recordset")
’--從數(shù)據(jù)庫(kù)中把你想放到EXCEL中的數(shù)據(jù)查出來(lái)
sql="select * from gbook order by id desc"
rs.Open sql,conn
if rs.EOF and rs.BOF then
response.write "<script>alert(’操作出錯(cuò),下面是產(chǎn)生錯(cuò)誤的可能原因:nn庫(kù)里暫時(shí)沒(méi)有數(shù)據(jù),所以不能導(dǎo)出EXCEL文件!’);location.href = ’"&referer&"’;</script>"
response.end
else
Dim Fs,Exc
Dim Excelstring,ExcelHead,Excelstr,Excelstr2
Dim Scou_FileNamen,Scou_FieldList
Dim Dest_FileName,Dest_FieldList
Dest_FileName=""&CName&""&daytime&".csv"
Excelstring = ""
ExcelHead = "識(shí)別號(hào)" & "," & "主題類型" & "," & "公司名稱"& "," & "姓名"& "," & "性別"& "," & "職位"& "," & "城市省份" & "," & "城市" & "," & "公司地址"& "," & "郵編"& "," & "郵件"& "," & "電話"& "," & "傳真" & "," & "手機(jī)"& "," & "公司網(wǎng)址"& "," & "詳細(xì)內(nèi)容"& "," & "IP地址"& "," & "留言時(shí)間"
Set Rs = Server.CreateObject ("ADODB.Recordset")
Sql = "Select * From gbook"
Rs.Open Sql,Conn,1,3
Do While Not Rs.Eof
Excelstr = Rs("ID") & "," & Rs("zhutiname") & "," & Rs("gsname") & "," & Rs("gsname") & "," & Rs("sex") & "," & Rs("zhiwei")& "," & Rs("Province")& "," & Rs("City") & "," & Rs("dizhi") & "," & Rs("youbian") & "," & Rs("email") & "," & Rs("tel")& "," & Rs("fax")& "," & Rs("tel2") & "," & Rs("homeurl") & "," & Rs("body") & "," & Rs("ip") & "," & Rs("addtime")
Excelstr2 = Excelstr2 & Chr(13) & Excelstr
Rs.Movenext
Loop
Excelstring = ExcelHead & Excelstr2
Rs.Close
Set Rs=Nothing
Set Fs = CreateObject("Scripting.FileSystemObject")
Set Exc = Fs.OpenTextFile(Server.MapPath(Dest_FileName),2,True)
Exc.Write(Excelstring)
If Fs.FileExists(Server.MapPath(Dest_FileName)) Then
Response.Write("<a href=’"&Dest_FileName&"’>報(bào)表已經(jīng)生成,點(diǎn)擊查看</a><hr>")
Response.Write("<a href=’"&referer&"’>返回</a>")
’Response.write(Excelstring)
Else
Response.Write("生成報(bào)表失敗!")
End If
end if
%> |
Microsoft Access在很多地方得到廣泛使用,例如小型企業(yè),大公司的部門。
|