首 页 | 模 板 | 学 院 | 源 码 | 书 籍 | 壁 纸 | 字 体 | JS脚本 | FLASH源码 | 软 件 | 矢 量 | 服务器软件 | 素 材 | 其 它 |
设为主页
加入收藏
联系站长
平面设计 | 网页制作 | 程序编写 | 数 据 库 | 媒体动画 | 网络冲浪 | 服务器相关 | 站长乐园 | 业界动态 |
当前在线
将本地数据表或库上传并导入到服务器数据库的表中
2006-6-27 8:33:12  作者:模板天下收集整理  来源:未知 网友评论 0 条 论坛
  '函数名:ReadCdbToServ
'作  用:将本地数据表或库上传并导入到服务器数据库的表中
'参  数:CdbFileUp  ---- 被上传的库或表文件路径及文件名
'参  数:SdbConnStr ---- 服务器数据库链接字串
'参  数:SdbTbname  ---- 服务器将打开的表名
'参  数:FildStrArr ---- 导入的数据字段串(各字段用","隔开)
'返回值:成功返回 True 否则 False
'注可导入的文件类型有(0:Excel 1:Access 2:Text 3:DBF/FoxPro)
'注:Excel 的表为Sheet名称,文本及DBF/FoxPro的表名为数据文件的全名,如 aa.txt 或 aa.dbf
'注:Text 文本数据表是以","为分隔的格式 ,重点:被导入的数据库只能包含一个表,并且导入的字段应和服务器数据库的表相一致
'示  例:  CALL ReadCdbToServ(TempSj,"DRIVER=SQL Server;UID=sa;DATABASE=temp;SERVER=127.0.0.1;PWD=mzy1029;","img","mc,lx,mem")
'示  例:  Response.write "
"
'**************************************************''''
Public Function ReadCdbToServ(ByVal CdbFileUp,ByVal SdbConnStr,ByVal SdbTbname,ByVal FildStrArr)
  ReadCdbToServ=False
  Dim MbDir,Mbwjmc,aryTemp,VrCdb_Conn_Str,ofu_Conn,ofu_Rs,sfu_Conn,sfu_Rs,ofu_sql_str,sfu_sql_str,oaryTemp,TpTrs,Gtlx,CdbTbname
  VrCdb_Conn_Str=""
  MbDir=Readsyspath(1)
  If Right(MbDir,1)<>"\" Then MbDir=MbDir&"\"
  Mbwjmc=CdbFileUp
  aryTemp = Split(Mbwjmc,"\")
  Mbwjmc=aryTemp(UBound(aryTemp))
  aryTemp=Split(Mbwjmc,".")
  Gtlx=UCase(aryTemp(UBound(aryTemp)))
  If UpFsRn(100,MbDir,"temp."&Gtlx) Then
     If Gtlx="XLS" Then VrCdb_Conn_Str ="Provider=Microsoft.Jet.OLEDB.4.0;Extended Properties=Excel 8.0;Data Source="&MbDir&"temp."&Gtlx&";"             '' Excel [Tbname$]
     If Gtlx="MDB" Then VrCdb_Conn_Str ="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&MbDir&"temp."&Gtlx&";Jet OLEDB:Database Password=;"              '' Access
     If Gtlx="TXT" Then VrCdb_Conn_Str ="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&MbDir&";Extended Properties='text;HDR=Yes;FMT=Delimited'"        '' Text(,分割)
     If Gtlx="DBF" Then VrCdb_Conn_Str ="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&MbDir&";Extended Properties=dBASE IV;User ID=Admin;Password="    '' DBF/FoxPro
     Set sfu_Conn=server.createobject("ADODB.Connection")
     Set sfu_Rs  =server.createobject("ADODB.Recordset")
     sfu_Conn.open SdbConnStr
     sfu_sql_str="select "&FildStrArr&" from "&SdbTbname
     Set ofu_Conn=server.createobject("ADODB.Connection")
     Set ofu_Rs  =server.createobject("ADODB.Recordset")
     ofu_Conn.open VrCdb_Conn_Str
     Set  TpTrs=ofu_Conn.OpenSchema(20)
     CdbTbname=TpTrs(2)
     TpTrs.Close
     Set TpTrs = Nothing
     If Gtlx="XLS" Then CdbTbname="["&CdbTbname&"]"
     ofu_sql_str="select "&FildStrArr&" from "&CdbTbname
     oaryTemp = Split(FildStrArr,",")
     sfu_Rs.open sfu_sql_str,sfu_Conn,1,3
     ofu_Rs.open ofu_sql_str,ofu_Conn,1,3
     Do While Not ofu_Rs.Eof
        sfu_Rs.addnew
        For i = LBound(oaryTemp) To UBound(oaryTemp)
            sfu_Rs(oaryTemp(i))=ofu_Rs(oaryTemp(i))
        Next
        sfu_Rs.update
        ofu_Rs.MoveNext
     Loop
     ofu_Rs.Close
     ofu_Conn.Close
     Set ofu_Rs = Nothing
     Set ofu_Conn=Nothing
     sfu_Rs.Close
     sfu_Conn.Close
     Set sfu_Rs = Nothing
     Set sfu_Conn=Nothing
     ReadCdbToServ=True
     DelFile(MbDir&"temp."&Gtlx)
  End If
End Function
>> 相关文章

关于网站 | 客服中心 | 服务条款 | 友情链接 | 广告联系 | 本站历程 | 网站导航

吉ICP备05000107号