平时做技术实践时,很多问题不是概念不会,而是细节没串起来。拿“Access中批量替换数据库内容的两种做法”来说,它看着像小点,放到项目里常会牵出环境、配置、兼容性和维护成本。下面按实际采用顺序,把思路、关键写法和容易踩坑的地方讲清楚,便于大家直接对照操作。
从实现思路看,今天遇到一个问题,一Access数据库中存放着N条文章记录,现在想替换掉这些文章中的部分内容,我们首先想到的是到网站后台去一条一条修改文章,那如果有1000篇文章,那就在网站后台改1000次,难以想象这是什么样的工作量。其实在Access数据库中能够借助SQL语句来批量替换内容,只需一句话就能解决问题,下面借助两种方法来解决此问题。方法一:借助Access数据库中的查询分析器来修改(这里我采用的是Access 2003)
1、打开需修改的Access数据库
2、在数据库“对象”中点击“查询”
3、点击“在设计视图中新建查询”
4、在出现的界面中关闭“显示表”小窗口
5、点击“视图”菜单,选择“SQL视图”,此时将出现查询窗口,您能够在此输入SQL语句了
6、直接输入以下SQL语句:
Update 表 SET 字段=replace(字段,"原字符","替换字符")
实际处理时,您可根据实际情况,将上面红字换掉即可,这里举个例子,假设表为biao、字段为content、原字符为xiazai.jb51.net、替换字符为down1.jb51.net,那么相应的SQL语句如下所示:
复制代码 代码如下所示:
Update biao SET content=replace(content,"xiazai.jb51.net","down1.jb51.net")
7、点击工具栏中的感叹号,运行即可。
方法二:用ASP程序来批量替换字符,上面的代码有字符长度限制的问题。这个没有限制。
下面直接给出ASP程序代码,大家一看即知道了:
复制代码 代码如下所示:
'这里省略数据库连接代码
Dim rs,sql,text
Set rs=Server.CreateObject("ADODB.Recordset")
sql="Select content From biao"
rs.Open sql,conn,1,3
Do While Not rs.Eof
text=Replace(rs("content"),"xiazai.jb51.net","down1.jb51.net")
rs("content")=text
rs.Update
rs.MoveNext
Loop
rs.Close
Set rs=Nothing
您可能感兴趣的文章:
- sqlserver replace函数 批量替换数据库中指定字段内指定字符串参考方法
- 批量替换sqlserver数据库挂马字段同时防范sql注入攻击的代码
- MSSQL批量替换语句 在SQL SERVER中批量替换字符串的方法
- sqlserver 中ntext字段的批量替换(updatetext的用法)
- Sql 批量替换所有表中内容

