ASP批量替换ACCESS数据库里的字符串

突然发现已经不用ASP好久了,昨天登录自己的逍遥峡谷(www.icoa.cn)的主机,发现空间已经超了。于是想现在用的Bluehost的主机不是无限空间吗?所以把文章中的图片全部转移到Bluehost主机上,然后在原来网站引用,岂不能省很多空间?

说做就做,我把图片全部转移到f.icoa.cn下面,然后需要把ACCESS数据库里原来的图片地址批量修改为新地址。而逍遥峡谷用的是ASP搭建的网站,所以又一次需要修改ASP代码了。网上搜了下很多方法,我感觉不是太好。于是另辟蹊径,因为需要替换的是文章中的图片地址,所以首先读取数据库中的文章内容,批量替换图片地址,然后再写回去。

假设数据库是:icoadb.mdb,数据库存储文章的表是A,字段是content;图片地址,旧的地址是../upload/xxxx.jpg,新替换的地址是f.icoa.cn/pic/xxxx.jpg。

代码如下:

set conn=server.createobject("adodb.connection")
conn.open "driver={microsoft access driver (*.mdb)};dbq="&server.mappath("icoadb.mdb")

sql="select id,content from A order by id asc"
set rs=server.createobject("adodb.recordset")
rs.open sql,conn,3,3

do while not rs.eof
OC= rs("content")
'OC
if instr(OC,"../upload")>1 then
'
NC = replace (OC,"../upload","http://f.icoa.cn/pic")
'../uploadNC
rs("content")=NC
'content
response.write(rs("id")&" ->ok<br>")
'id
rs.update
end if
rs.movenext
loop
rs.close

经过测试,用ASP成功将ACCESS中的图片地址批量替换。

相关内容:
ASP用replace()替换字符串
ASP用InStr函数判断是否包含某字符串

“ASP批量替换ACCESS数据库里的字符串”的5个回复

评论已关闭。