首页
技术库|站长工具|技术手册|字体库|知识点词汇表| 联系我们|
打开本页的html静态页面
 

主菜单

文章分类

.: Asp技术 .: Asp代码库 .: Asp常用通用函数之将本地数据表或库上传并导入到服务器数据库的表中

  • 全文内容
  • 发表评论
  • 文章点评
  • 文章附件
  • Email文章
  • 打印文章

Asp常用通用函数之将本地数据表或库上传并导入到服务器数据库的表中

点击次数:274 创建日期:11-25-2007 录入:cn-web.com 字体:[ ] 点评:


 '函数名: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 "<form method='POST' action='test.asp' enctype='multipart/form-data'><input type='file' name='Tfile'><input type='submit' value='提交' name='B1'></form>"
  '**************************************************''''
  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

请文明参与讨论,禁止漫骂攻击。
评论总数:0 [ 查看全部 ] 网友评论
此文章还没有任何评论!
(+5分)
(+4分)
(+3分)
(+2分)
(+1分)
此内容无附件
网站地图 - 知识词汇 - 全文检索 - 广告服务 - 帮助中心 - 联系我们
.:www.cn-web.com
网站技术开发联盟之WEB开发技术知识库
联系人:老韩(QQ:5679551)
晋ICP备07003487号