J'ai besoin de mettre à jour / remplacer les données dans datatable.column. La table a un champ nommé Content
. J'utilise la REPLACE
fonction. Étant donné que le type de données de la colonne est NTEXT
, SQL Server ne me permet pas d'utiliser la REPLACE
fonction.
Je ne peux pas changer le type de données car cette base de données est une table de logiciels tiers. La modification du type de données entraînera l'échec de l'application.
UPDATE [CMS_DB_test].[dbo].[cms_HtmlText]
SET Content = REPLACE(Content,'ABC','DEF')
WHERE Content LIKE '%ABC%'
Je reçois cette erreur:
Msg 8116, niveau 16, état 1, ligne 1 Le type de données d'argument ntext n'est pas valide pour l'argument 1 de la fonction de remplacement.
- Puis-je résoudre ce problème avec T-SQL? Quelqu'un a-t-il un exemple de lecture et de boucle?
- Comme il s'agit d'une conversion unique, je peux peut-être changer de type, mais j'ai peur de gâcher les données.
Il y a un champ de clé primaire: nom: ID - entier - c'est une identité .... Je dois donc y penser aussi. Peut-être définir l'identité sur N temporaire.
Veuillez indiquer comment réaliser la fonction REMPLACER?
Environ. 3000 déclarations doivent être mises à jour avec une nouvelle solution.