欢迎光临!今天是2017年10月18日 星期三
首页 基础教程  留言薄制作  神奇FSO  ASP优化  ASP实例  SQL语法  VB教程  安全手册  综合技巧  案头必备  留言  
 综合技巧
·ASP技巧TOP10 (1)
·ASP技巧TOP10 (2)
·ASP技巧TOP10 (3)
·ASP技巧TOP10 (4)
·奇妙的文件系统对象组件
·关于在浏览器中文件上载的方法..
·存储过程分页
·在同一页面动态实现两个sel..
·用ASP实现WEB页面分用户..
·怎样用ASP访问SQL Se..
·在Web页面中执行Windo..
·ASP程序中日期型数据的格式..
·ASP中数据库操作中游标和加..
·如何在Web页面中集成文件上..
·有关win2000、IIS5..
·在您的网站中加入互动功能
·ASP服务器组件的编程
·数据库聊天室的“无刷新”技术..
·ASP页面内VBScript..
·ASP中处理#include
·关于数据库连接的一点个人见解
·利用ASP显示当前在线人数
·在ASP处理程序时,进度显示
·ASP中文本文件与数据库文件..
·FrontPage创建HTM..
·FrontPage创建HTM..
·如何使ASP输出结果不支持h..
·用几行Asp代码实现防止表单..
·在Flash中使用ASP技术
·在ASP中使用脚本语言
■ 综合技巧 > ASP中文本文件与数据库文件的数据交换
网络数据库的应用是WWW上一个很重要的组成部分,可以这样说,如果缺少了数据库,网络也就失去了灵魂。大家可以想象一下,如果没有象YAHOO,SOHU等搜索引擎的话,那么在网上寻找一个目标变得多么困难,大家在茫茫网海里变得不知所往,动辄迷失方向。其实,这些搜索引擎是网络数据库的最典型的应用,在ASP(Active Server Pages)技术里对数据库的直接操作是比较多的,下面讲述一种由文本文件向数据库文件传递数据的方法。
这个文本文体是由终端采集传送到服务器的一个固定目录下,由服务器去读取数据并存放在本机数据库里,转换完后删除掉这个文本文件。这样终端负责采集数据,并按给定的格式上传到服务器的指定目录下,服务器端的数据库对终端来讲是完全不透明的,保障了服务器的安全,对现在的网络数据库应用来讲或许有点帮助。
Txttolib.asp
<html>
<head>
<meta http-equiv="refresh" content="30;url=deltext.asp">
<meta http-equiv="Content-Type"
content="text/html; charset=gb_2312-80">
<meta name="GENERATOR" content="Microsoft FrontPage Express 2.0">
<title>[把文本文件转换成数据库文件]</title>
</head>

<body bgcolor="#FFFFFF">
<align="center">
<p align="center"><font color="#FF0000">正在处理数据,请稍候!
<br>
</font><font color="#000000"><align="center"><%
str=server.mappath("/") ‘取得服务器的根目录
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.GetFolder(str & "\thetext")
Set fc = f.Files
k=1
For Each f1 in fc
file(k)=f1.name ‘得到此路径下的所有文件名
k=k+1
next
%><% ii=1%><%
set fs = CreateObject("Scripting.FileSystemObject")%><%
while ii<k 
response.write file(ii) & "<br>" 
set textinstance=fs.opentextfile(str & "\thetext\" & file(ii),1,false,false)‘打开文件来读数据
   while textinstance.atendofstream<> true ‘如果文件没有结束
     visitornum=textinstance.readline ‘读进一行数据
     j=0
    cd=len(visitornum)
    for i=1 to cd
     if mid(visitornum,i,1)="," then ‘数据与数据之间以“,”隔开
       j=j+1
     else
       select case j‘分别取得各数据值
         case 0
           me1=me1+mid(visitornum,i,1)
         case 1
          me2=me2+mid(visitornum,i,1)
         case 2  
          me3=me3+mid(visitornum,i,1)
        case 3
          me4=me4+mid(visitornum,i,1)
         case 4
          me5=me5+mid(visitornum,i,1)
         case 5
          me6=me6+mid(visitornum,i,1)
      end select
      end if
    next
    response.write me1 & " " & me2 & " " & me3 & " " & me4 & " " & me5 & " " & me6 & " " & "<br>"
    set cn=server.createobject("adodb.connection")
    cn.open "water","",""
    set rs=server.createobject("adodb.recordset")
    sql="select * from watertable"
    rs.open sql,cn,3,3‘打开数据库进行追加操作
    if rs.eof=true then
      on error resume next
      'rs.movelast
      rs.movefirst
    on error resume next
    end if
   rs.addnew‘增加一条记录
    rs("wvalue")=me1
    rs("wdate")=me2
    rs("wtime")=me3
    rs("zxz")=me4
    rs("jdh")=me5
    rs("czh")=me6
    rs.update‘更新数据
    rs.close
    me1=""
    me2=""
    me3=""
    me4=""
    me5=""
    me6=""
  wend
   ii=ii+1
wend %><align="center"></font><font color="#FF0000">数据处理完毕!</font>
</p>
</body>
</html>

deltext.asp
<html>

<head>
<meta http-equiv="refresh" content="30;url=txttolib.asp">
<meta http-equiv="Content-Type"
content="text/html; charset=gb_2312-80">
<meta name="GENERATOR" content="Microsoft FrontPage Express 2.0">
<title>[删除文件]</title>
</head>

<body bgcolor="#FFFFFF">

<p align="center"><font color="#FF0000">正在删除文件,请稍候!<br>
</font><font color="#000000"><%
dim file(50)‘定义最大文件数
str=server.mappath("/")
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.GetFolder(str & "\thetext\")
Set fc = f.Files
k=1
For Each f1 in fc
   file(k)=f1.name
   response.write file(k) & "<br>"
   k=k+1
next
%><% i=1
  while i<k
    Set fso = CreateObject("Scripting.FileSystemObject")
    fso.DeleteFile(str & "\thetext\" & file(i))
    i=i+1
  wend
%></font><font color="#FF0000">文件删除完毕!</font></p>
</body>
</html>
这两个小程序在NT4上作者都调试通过。但有几点要认清,一个是文本文件大小的规划(文本文件的数量多少也是如此),如果数据量大,那么在转换时的时间大小要调整;二是转换文本文件到数据库文件时的程序调试一定要严谨,如果程序有误,在数据转换过程中没有全部转换,而后又删除了这个文本文件,则会有所损失。所以这两点一定要注意,不能马虎。

---摘自《ChinaASP》
■今日推荐:数据库聊天室的“无刷新”技术要点

本网站是学习网站,内容整理大多来自互联网,尽量标明了出处,如果侵犯了您的权力请通知我,立即纠正
欢迎提出宝贵建议,提供相关资料,以便相互学习,共同提高!