asp自动读取文件夹里文件的内容添加到数据库中
答案:1 悬赏:10 手机版
解决时间 2021-03-08 21:11
- 提问者网友:了了无期
- 2021-03-07 23:32
asp自动读取文件夹里文件的内容添加到数据库中
最佳答案
- 五星知识达人网友:轻雾山林
- 2021-03-08 00:06
要有一个调用才能保存,不会自动触发.
比如上传文件,上传后调用[写好的这个保存到数据库的过程,才可以保存.
要添加不重名,可以在保存过程中先判断数据库里有没有该字段,有则跳出,没有就保存。
最安全的方法是限制文件标题这个字段无重复。添加重复文件的时候就会出错
Const db="" '数据库路径
Sub File2DB(fpath)
Dim cn,rs
Set cn=Server.createObject("ADODB.Connection")
cn.Provider="Microsoft.Jet.Oledb.4.0"
cn.Open Server.mapPath(db)
Dim fs,tfile,fname,fcont
Set fs=Server.CreateObject("Scripting.FileSystemObject")
tfile=fs.getFile(fpath)
fname=tfile.name
fcont=tfile.openAsTextStream().ReadAll
Set rs=cn.Execute("SELECt fname FROM thetable WHERe fname='"& fname &"'")
If rs.EOF Then
cn.Execute "INSERT INTO thetable(fname,fcont) values('"& fname &"','"& fcont &"')"
Else
Response.write "该文件内容库中已存在"
End If
End Sub
这是给定文件路径保存到数据库的方法。我是直接敲的,没做测试(测试还要建表,太麻烦)
有些地方还要做容错处理,你可以参考着修改一下
thetable 是数据库表名,fname,fcont是其中的两个字段,存文件名和内容
调用方法
Call File2DB(filepath) '传入新添加的文件路径追问如果设置页面自动刷新,然后一直开着,效果跟自动触发差不多吧?
或者用VB脚本在windows任务计划添加定时任务,然后机器一直开着,效果也可以吧?追答你如果是一直刷新的话,要从文件夹里读所有文件,循环判断
这样过程里的部分语句要做下改动.
现在这个只是判断并存储一个文件
比较费资源
最好借助一个触发事件
比如上传文件,上传后调用[写好的这个保存到数据库的过程,才可以保存.
要添加不重名,可以在保存过程中先判断数据库里有没有该字段,有则跳出,没有就保存。
最安全的方法是限制文件标题这个字段无重复。添加重复文件的时候就会出错
Const db="" '数据库路径
Sub File2DB(fpath)
Dim cn,rs
Set cn=Server.createObject("ADODB.Connection")
cn.Provider="Microsoft.Jet.Oledb.4.0"
cn.Open Server.mapPath(db)
Dim fs,tfile,fname,fcont
Set fs=Server.CreateObject("Scripting.FileSystemObject")
tfile=fs.getFile(fpath)
fname=tfile.name
fcont=tfile.openAsTextStream().ReadAll
Set rs=cn.Execute("SELECt fname FROM thetable WHERe fname='"& fname &"'")
If rs.EOF Then
cn.Execute "INSERT INTO thetable(fname,fcont) values('"& fname &"','"& fcont &"')"
Else
Response.write "该文件内容库中已存在"
End If
End Sub
这是给定文件路径保存到数据库的方法。我是直接敲的,没做测试(测试还要建表,太麻烦)
有些地方还要做容错处理,你可以参考着修改一下
thetable 是数据库表名,fname,fcont是其中的两个字段,存文件名和内容
调用方法
Call File2DB(filepath) '传入新添加的文件路径追问如果设置页面自动刷新,然后一直开着,效果跟自动触发差不多吧?
或者用VB脚本在windows任务计划添加定时任务,然后机器一直开着,效果也可以吧?追答你如果是一直刷新的话,要从文件夹里读所有文件,循环判断
这样过程里的部分语句要做下改动.
现在这个只是判断并存储一个文件
比较费资源
最好借助一个触发事件
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯