MySQL数据库,如何批量替换整个数据库的个别字符

MySQL数据库,如何批量替换整个数据库的个别字符,第1张

用phpmyadmin把数据库导出为sql脚本,空间商一般有提供这个管理工具给用户使用的,如果没提供,你也可以自行上传一个到空间里。用它导出为sql脚本后,用记事本打开,然后用一次性查找替换,替换之后保存,然后再在phpmyadmin里把原来的表及数据全部删除,删除后重新导入修改好的sql脚本。

*** 作以上东西时请先备份你的数据库喔,以免有意想不到的问题发生。

<%

Set Conn = ServerCreateObject("ADODBConnection")

ConnOpen "Provider=MicrosoftJetOLEDB40;Data Source=" & ServerMapPath("数据库名mdb")

Set rs = ServerCreateobject("ADODBRecordset")

sql="Select from [表名]"

rsopen sql,conn,1,3

while not rseof

rs("字段名")=replace(rs("字段名"),"“ ”","“")

rsupdate

rsmovenext

wend

rsclose

set rs=nothing

connclose

set conn=nothing

%>

SELECT id,replace(id,'xzqqai','mayunyulu'),post_author,replac(post_author,'xzqqai','mayunyulu')

FROM `a0401114634``wp_posts`

WHERE `ID` LIKE '%xzqqai%'

OR `post_author` LIKE '%xzqqai%'

查询下看是否是你所要的,

update `a0401114634``wp_posts`

set id=replace(id,'xzqqai','mayunyulu'),

post_author=replac(post_author,'xzqqai','mayunyulu')

update 表名 set title=replace(title,'中国','china')

为什么不行, 错误还是怎么, 说的一点不清楚, 如果错误提示是什么, 你的数据结构也不清楚, 没法回答你

下面过程是数据库中所有表中含有某一值替换成新值,你参考一下, 就可以替换数据库中固定某字段,下面的固定字符串了

If exists (select from sysobjects where name = 'replaceString' and xtype = 'P' )

Drop procedure replaceString

Go

Create procedure replaceString (@tableName varchar(255),@oldStr varchar(255), @newStr varchar(255))

as

Declare @Sql varchar(1024)

Declare @tableId varchar(20)

declare @columnName varchar(20)

declare @columnCursor cursor

declare @colNameCursor cursor

If len(@TableName) > 0

Begin

Select @Sql = 'Declare TabCursor cursor read_only for select name ,id from sysobjects where name ='+@TableName

Exec(@Sql)

End

else

Declare TabCursor cursor read_only for select name ,id from sysobjects where xtype='u'

--set tabCursor = cursor scroll read_only for select name ,id from sysobjects where xtype='u'

open TabCursor

fetch TabCursor into @tableName,@tableId

while @@Fetch_status = 0

Begin

Select @Sql = 'Declare ColumnCursor cursor scroll read_only for select name from syscolumns where id='+@tableId+' and xtype=167 '

Exec(@sql)

open ColumnCursor

fetch ColumnCursor into @columnName

while @@Fetch_status = 0

Begin

Select @Sql = 'update '+@tableName+' set '+@columnName+' = (replace('+@columnName+','+char(39)+@oldStr+char(39)+','+char(39)+@newStr+char(39)+')) where charindex('+char(39)+@oldStr+char(39)+','+@columnName+')>0 '

Exec(@sql)

fetch Next From ColumnCursor into @columnName

End

close columnCursor

deallocate columnCursor

fetch Next From TabCursor into @tableName,@tableId

End

close tabCursor

deallocate tabCursor

go

以上就是关于MySQL数据库,如何批量替换整个数据库的个别字符全部的内容,包括:MySQL数据库,如何批量替换整个数据库的个别字符、Asp问题,怎么批量替换access数据库里面的字符、SQL数据库怎么批量替换网址啊等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9493574.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存