如何将文本文件导入数据库?

earthpea 2004-11-22 04:59:39
我正在做一个报表系统,要求下级部门每周上报数据,但有一个问题没办法解决:
各部门在各自的服务器上运行下发的程序,生成文本文件,格式如下
N011|C01|15|1524.00
N011|C02|9|158.26
.........
(格式说明:机构号|商品名称|销售数量|总销售额,使用管道符号“|”为分隔符)
每个部门生成的文本每周一上午上传到服务器上(用ASP程序控制,上传组件上传,文件名是唯一的,不会重复)。

################
我现在要求在上传成功,点击按钮,由ASP程序自动将数据导入数据库中,数据库使用的是SQL SERVER 2000,导入成功后,再进行校验和上报。
################

校验及上报都没有问题,问题就是如何将数据从服务器一个目录中的文本文件导入到数据库的一个表中?这样的话下级部门就可以直接知道数据是否校验通过了。

因为我现在是让他们全部上传后,我再用“导入和导出数据”工具导入数据库,进行校验,有问题又要打电话通知他们重新生成数据。

我考虑过使用fso来读取每一条数据,再写入数据库,但这样的效率太差了吧,因为我里有九家下级机构,每个文本文件都有六百至八百行的,有没有更好的办法呀,呵呵。

各位大侠帮忙了:)
...全文
170 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
xdk 2004-11-25
  • 打赏
  • 举报
回复
set fs=server.CreateObject("scripting.filesystemobject")
set txtfile=fs.opentextfile(server.MapPath("weizan.txt"))
while not txtfile.AtEndOfStream


response.Write(txtfile.readline)

wend
txtfile.close
lwlmaomao 2004-11-22
  • 打赏
  • 举报
回复
二种方法:
1)直接把txt当成数据库
2)通过FSO把txt里的内容读出再写库
earthpea 2004-11-22
  • 打赏
  • 举报
回复
我怎么没有想到呢,呵呵
可以试试
不过,还有更好的办法吗?
我是见过有的JSP系统用这种方法进行数据上报的,就是不知道是怎么做的。
若白师妹 2004-11-22
  • 打赏
  • 举报
回复
建议:在用户上传完毕后,点"检验"按钮时,服务器才会去读他刚上传的文件并且导入数据库,每个文本文件都有六百至八百行的,对你的服务器来这个说太小case了吧
若白师妹 2004-11-22
  • 打赏
  • 举报
回复
不用fso,不用导入和导出数据,
或者用:
ODBC Driver for Text
 
oConn.Open "Driver={Microsoft Text Driver (*.txt; *.csv)};" & _
          "Dbq=c:\somepath\;" & _
          "Extensions=asc,csv,tab,txt;" & _
          "Persist Security Info=False"


除此之外我想不出来还能用什么?

28,390

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧