asp+Access通用的自动替换数据库中的字符串

当初只是为了玩玩写的,没想到写了之后不断有人询问,所以改写了一下代码,完善了一下,支持了正则替换,避开了会导致出错的二进制(ole对象),并且做了一个EXE的程序。感谢虚拟帮忙。
附asp代码:
复制代码 代码如下:
<%    
'####################################    
'批量替换数据库内容2008-3-17     
'替换是不可逆的,所以操作前做好能备份    
'####################################    
Dim Db,conn,Rs1,Rs2,Str1,Str2,I,Re    
str1="admi[0-z]" '要替换的字符串,支持正则    
str2="1234" '替换为的字符串    
Db="db.mdb" '数据库地址    
'以下无需改动    
'创建正则对象    
Set Re=new RegExp    
    Re.IgnoreCase =True   
    Re.Global=True   
Set Conn=Server.CreateObject("ADODB.Connection")    
    Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&server.mappath(Db)    
Set Rs1 = Conn.OpenSchema(20)    
    Do While Not Rs1.Eof    
        If UCase(Rs1("TABLE_TYPE"))="TABLE" Then '如果是用户表,则进行操作    
          Set Rs2=Server.Createobject("adodb.recordset")    
              Rs2.Open "select * from ["&Rs1("TABLE_NAME")"]",conn,1,3    
              Do While Not Rs2.Eof    
                For I=0 to Rs2.fields.count-1 '遍历所有字段    
                    If Rs2(i).Properties("ISAUTOINCREMENT") = False And Rs2(i).Type<>128 And Rs2(i).Type<>204 And Rs2(i).Type<>205 Then '如果非自动编号并且非ole对象    
                        Rs2(Rs2(i).name)=Myreplace(Rs2(i).value&"")    
                    End If   
                Next   
             Rs2.Movenext    
             Loop   
        Rs2.Close    
        Set Rs2=nothing    
        End If   
    Rs1.MoveNext    
    Loop   
Rs1.Close    
Set Rs1=Nothing   
Conn.close    
Set Conn=Nothing   
Set Re=Nothing   
Response.Write "替换完成"

'自定义的替换函数    
Function myreplace(byval Tstr)    
If Tstr="" Or isnull(Tstr) Then     
 Exit Function   
Else   
    Re.Pattern=Str1    
    myReplace =Re.Replace(Tstr,Str2)    
End If   
End Function   
%>

时间: 2024-08-01 15:52:12

asp+Access通用的自动替换数据库中的字符串的相关文章

asp+Access通用的自动替换数据库中的字符串_应用技巧

当初只是为了玩玩写的,没想到写了之后不断有人询问,所以改写了一下代码,完善了一下,支持了正则替换,避开了会导致出错的二进制(ole对象),并且做了一个EXE的程序.感谢虚拟帮忙. 附asp代码: 复制代码 代码如下: <%     '####################################     '批量替换数据库内容2008-3-17     '替换是不可逆的,所以操作前做好能备份     '####################################     Di

Access通用-自动替换数据库中的字符串

自己可以修改myreplace函数,实现复杂的替换.呵呵,好象用处不大.主要是看看如何读取access表和字段列表 <%'####################################'替换数据库内容 lamking 2005-8-22'http://www.lamking.com QQ:628557'####################################Dim Db,Connstr,conn,rs,rs2,str1,str2,Istr1="abcd"

Access通用--自动替换数据库中的字符串

access|数据|数据库|字符串   自己可以修改myreplace函数,实现复杂的替换.呵呵,好象用处不大.主要是看看如何读取access表和字段列表 <%'####################################'替换数据库内容 lamking 2005-8-22'http://www.lamking.com QQ:628557'####################################Dim Db,Connstr,conn,rs,rs2,str1,str2,

asp.net 怎么能实现下载数据库中二进制的图片

问题描述 asp.net 怎么能实现下载数据库中二进制的图片 sql中是以二进制的方式存入图片的 想在 GridView( 或其它控件)中添加一列'下载',点下载按钮就下载对应imageid中的图片,怎么实现,请举例说明 解决方案 服务器端直接用 Response.BinaryWrite((byte[])dataset.Tables[0].Rows[0]["图片字段"]); 返回客户端 客户端加上 <img src="服务器地址" /> 解决方案二: 完

原来的SSH2程序加了maven多模块继承和依赖后不能自动生成数据库中的表了

问题描述 我的程序以前在编译的时候可以自动生成数据库中的表,现在我给程序加上了maven,实现了多模块的maven继承和依赖.各模块之间关系结构如下.现在的问题是程序在编译的时候不能自动生成数据库中的表了,TOMCAT启动也不报错,TOMCAT可以正常启动.我第一次接触MAVEN,也不知道到底是哪里有问题.我想如果是缺少包的话程序应该报错的.请各位高手帮忙看看到底如何解决这个问题,在线等待中,谢谢了. 解决方案 解决方案二:在线等了俩个小时了怎么还是没人回答呢?

求asp+access查询代码,实现图中要求的代码。

问题描述 求asp+access查询代码,实现图中要求的代码.

替换android中的字符串问题

问题描述 替换android中的字符串问题 我在应用程序中显示textview数据库中的文本.文本中包含 'rn'.因此我使用空格' ' 代替'rn'.代码是: String myString = listItem.gettextdata().replace("rn", " "); 但是文本仍然用 rn...显示,并没有以空格显示.请大家帮忙看问题出在哪里? 解决方案 这是一个例子,你必须转义反斜杠字符,如: String myString = listItem.g

在SQL Server数据库中拆分字符串函数

SQL Server数据库中拆分字符串函数的具体方法: CREATE FUNCTION uf_StrSplit '1.1.2.50','.' (@origStr varchar(7000), --待拆分的字符串 @markStr varchar(100)) --拆分 标记,如',' RETURNS @splittable table ( str_id varchar(4000) NOT NULL, --编号ID string varchar(2000) NOT NULL --拆分后的字符串 )

遍历-要将数据库中以字符串形式存在的表达式写入if..else if...else if代码中,怎样做到

问题描述 要将数据库中以字符串形式存在的表达式写入if..else if...else if代码中,怎样做到 如题,本来可以一直用if...else if... 把所有的表达式都遍历一遍以找出吻合的项的但现在要求弄个规则库,把表达式的信息都放在规则库中,方便对这些起约束作用的表达式就行管理,如增删查找等操作:我的设想是弄个数据库表,把表达式都存在表中,然后弄个if..else if循环遍历整个表的表达式,但问题是表达式存入数据库中在取出来是字符串,写入代码的时候会有""引号,不符合代码