Maison > base de données > tutoriel mysql > Comment insérer correctement des nouvelles lignes dans les chaînes nvarchar dans SQL Server ?

Comment insérer correctement des nouvelles lignes dans les chaînes nvarchar dans SQL Server ?

Patricia Arquette
Libérer: 2024-12-18 09:56:11
original
401 Les gens l'ont consulté

How to Correctly Insert Newlines into nvarchar Strings in SQL Server?

Insertion correcte de nouvelle ligne dans les chaînes nvarchar

Lorsque vous travaillez avec du texte enrichi dans SQL Server et que vous rencontrez le besoin de le convertir en texte brut, un la tâche courante consiste à remplacer les sauts de ligne HTML (
) par des nouvelles lignes. Cependant, la simple utilisation de la fonction REPLACE peut entraîner une insertion incorrecte des sauts de ligne.

Le problème :

Dans l'exemple donné, le problème survient en raison de l'encodage des caractères de nouvelle ligne. La fonction REPLACE s'attend à ce que les paramètres soient du type de données nvarchar, qui prend en charge les caractères Unicode. Les caractères de nouvelle ligne ASCII (retour chariot et saut de ligne, représentés respectivement par CHAR(13) et CHAR(10)) ne peuvent pas être directement insérés dans une chaîne nvarchar sans être convertis en Unicode.

La solution :

Pour résoudre ce problème, les représentations Unicode des caractères de nouvelle ligne doivent être utilisées à la place :

set @rich_text_to_modify = replace(@rich_text_to_modify,'<br>', NCHAR(13)+NCHAR(10))
Copier après la connexion

NCHAR(13) et NCHAR(10) représentent respectivement les caractères de retour chariot et de saut de ligne Unicode. L'utilisation de ces caractères Unicode garantit que les nouvelles lignes sont correctement insérées dans la chaîne nvarchar.

Considérations supplémentaires :

  • SQL Server Management Studio (SSMS) Options : Assurez-vous que l'option "Conserver CR/LF lors de la copie ou de l'enregistrement" est activée dans le menu Options de SQL Server Management Studio (Outils -> Cette option préserve les sauts de ligne lors de la copie ou de l'enregistrement des résultats dans une grille ou un fichier.
  • Compatibilité des bases de données : La prise en charge d'Unicode dans SQL Server varie en fonction des niveaux de compatibilité des bases de données. Assurez-vous que votre base de données est définie sur un niveau de compatibilité prenant en charge Unicode, tel que SQL Server 2012 et versions ultérieures.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal