sql >> Databáze >  >> RDS >> Sqlserver

SQL Server najít a nahradit v poli TEXT

Konečně jsem na to přišel. Bylo pohřbeno v komentářích k článku publikovanému jfrobishow. Děkuji mnohokrát.

Zde je celá odpověď, která mě vedla k řešení:

UPDATE TableName SET DBTextField = REPLACE(CAST(DBTextField AS varchar(MAX))
                                               ,'SearchText', 'ReplaceText')
FROM TableName
WHERE CHARINDEX('SearchText',CAST(DBTextField as varchar(MAX)))>0

Poznámka:že to se může zkrátit velikost vašeho dbfield , ale pokud je dlouhý textový sloupec, nastavte jej nvarchar(max) a neměli byste dostat žádné zkrácení!




  1. 3 nejlepší skóre - MySQL

  2. Nejlepší způsob, jak zkontrolovat prázdnou nebo nulovou hodnotu

  3. MySQL:Proč je DELETE náročnější na CPU než INSERT?

  4. Použití Like u proměnné parametru?