MSSQL批量替換(huàn)語(yǔ)句 在SQL SERVER中批量替換字符串的方法
方法一:(這種(zhǒng)是(shì)最常用的,因為很多大段的內容都(dōu)使(shǐ)用text ntext等數據(jù)類型,而我們通常也是(shì)替換裏(lǐ)麵的內容)
varchar和nvarchar類型是(shì)支持replace,所以如(rú)果你的text不超過8000可以(yǐ)先轉換成前麵兩種類型再使用replace
替(tì)換 text ntext 數據類型字段的語句
update 表名 set 字段名=replace(cast(與前麵(miàn)一樣的(de)字段名 as varchar(8000)) ,'原本內容','想要替換(huàn)成什麽')
方法二:(替換其他數據類型字段的語(yǔ)句,實際應用中不常見)
以(yǐ)下是補充:
1。如何批量替換ntext字段裏(lǐ)麵的數據
問題描述:
我想把數據庫中News表中的(de)字段content中的一些(xiē)字符批量替換。
我的(de)content字段是ntext類型的。
我想替換的字段是content字段,我想把裏麵的www.ynaad.com替換成http://www.ynaad.com,替換方法(fǎ)是:
update News
set content = replace(cast(content as varchar(8000)),
'www.ynaad.com',
'/')
2。如何批量替換varchar和nvarchar類型
varchar和nvarchar類型是支持replace,所以如果你的text/ntext不超過8000/4000可以先轉(zhuǎn)換成前麵兩種類型再使用replace。
update 表名
set text類型字段名=replace(convert(varchar(8000),text類型字段(duàn)名),'要替換的字符','替換成的值')
update 表名
set ntext類型字段(duàn)名=replace(convert(nvarchar(4000),ntext類型字段名(míng)),'要(yào)替換的字符','替換成的值')
不過上麵的方法,對(duì)於text或ntext字段(duàn)超過8000的時候就不能用了,一(yī)般可以(yǐ)用asp程序來實現(xiàn),先讀取內容替(tì)換後,保存到數據庫中。
臨時解(jiě)決方法:就是在生成靜(jìng)態的時間,可以先替換再(zài)輸出,這(zhè)裏有個貌(mào)似不錯(cuò)的解決方法了(le)。
關鍵詞:MSSQL
閱讀本文後您有什麽感想? 已有 人給出評價!
- 0
- 0
- 0
- 0
- 0
- 0