t-sql remplacer sur le champ de texte

J'ai frappé un problème classique d'avoir besoin de faire une chaîne de remplacement sur un champ de texte dans une base de données sql 2000. Ce pourrait être soit une mise à jour sur l'ensemble d'une colonne ou d'un seul domaine que je ne suis pas pointilleux.

J'ai trouvé quelques exemples de comment utiliser updatetext pour l'atteindre, mais ils ont tendance à être dans des procédures stockées, personne ne sait d'une chose semblable qui est encapsulé dans une fonction donc je peux l'utiliser comme j'avais l'habitude de l'utilisation de replace(). Le problème avec la fonction de remplacement() pour quelqu'un qui n'est pas au courant, c'est qu'il ne prend pas en charge les champs de texte.

Edit: j'ai réalisé que je pourrais probablement vous en sortir avec varchar(8000) afin de varier les champs de ce type qui résout le problème. Je n'ai jamais trouvé une vraie solution.

  • Je pense que vous avez besoin de fournir plus de détails. Vous souhaitez mettre à jour un champ unique d'une seule ligne? Quel est le problème de remplacer() elle-même?
  • BTW, UPDATETEXT est due à être supprimés à partir d'une future version de SQL Server (> 2008)
  • jetez un oeil à ma réponse de l'homme
  • Pour SQL 2005 et où vos données sont à moins de 2 GO de longueur, voici une solution qui a fonctionné pour moi => stackoverflow.com/a/2641280/743
InformationsquelleAutor PeteT | 2008-11-14