說到資料庫中文本的替換,一般人首先想到的是Replace函數。
update Table set Column=Replace(Column,’oldkeyword’,'newkeyword’)
但當在進行text字段類型的字元串替換時,SQL會報錯“參數資料類型 text 對于 replace 函數的參數 1 無效”。
原來問題是出在對text或ntext類型的資料在查詢中不能進行字元串操作。這時用得最多的便是把text當作varchar(實際内容長度低于8000位元組時)或把ntext當作nvarchar(實際内容長度低于4000位元組時)來處理了:
update Table set Column=Replace(Cast(Column as varchar(8000)),’oldkeyword’,'newkeyword’)
update Table set Column=Replace(Cast(Column as nvarchar(4000)),’oldkeyword’,'newkeyword’)