欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

替换数据库内容

程序员文章站 2023-01-29 12:51:38
<%'####################################'替换数据库内容 lamking 2005-8-22'更新修正:2006-6-28'ht...

<%
'####################################
'替换数据库内容 lamking 2005-8-22
'更新修正:2006-6-28
'http://www.imbbs.cn qq:628557
'出售空间域名。网页制作。
'####################################
'以下请根据你的不同情况做修改
const s1="admin" '要被替换的字符串
const s2="1234" '替换为的字符串
const db="lamking.mdb" '数据库
const ignorecase=true '忽略大小写
'以下数据无需更改
dim ors,ors2,conn,i
 set conn=server.createobject("adodb.connection")
  conn.open "provider=microsoft.jet.oledb.4.0;data source="&server.mappath(db)
 set ors=conn.openschema(20)
  do while not ors.eof
   if ucase(ors("table_type"))="table" then '如果是用户表
     '循环替换该表的每一个字段
      set ors2=server.createobject("adodb.recordset")
       ors2.open "select * from ["&ors("table_name")&"]",conn,1,3
        do while not ors2.eof
         for i=0 to ors2.fields.count-1
          '如果是ole对象或者自动编号字段,则不替换
           if ors2(i).properties("isautoincrement")=false and ors2(i).type<>205 then
            ors2(ors2(i).name)=myreplace(ors2(i).value)
           end if

         next
         ors2.update
        ors2.movenext
        loop
     ors2.close
     set ors2=nothing
    end if
 ors.movenext
 loop
 ors.close
 set ors=nothing
conn.close
set conn=nothing
response.write"替换完成"

function myreplace(byval tstr)
dim regex
if tstr="" or isnull(tstr) then  exit function
 set regex=new regexp
  regex.global = true
  regex.ignorecase = ignorecase
  regex.multiline = true
  regex.pattern=s1
  myreplace=regex.replace(tstr,s2)
 set regex=nothing
end function
%>