Korrektes Einfügen von Zeilenumbrüchen in Nvarchar-Zeichenfolgen
Wenn Sie mit Rich Text in SQL Server arbeiten und auf die Notwendigkeit stoßen, ihn in einfachen Text umzuwandeln, a Eine häufige Aufgabe besteht darin, HTML-Zeilenumbrüche (
) durch Zeilenumbrüche zu ersetzen. Allerdings kann die einfache Verwendung der REPLACE-Funktion dazu führen, dass Zeilenumbrüche nicht richtig eingefügt werden.
Das Problem:
Im gegebenen Beispiel entsteht das Problem aufgrund der Kodierung der Newline-Zeichen. Die REPLACE-Funktion erwartet, dass die Parameter vom Datentyp nvarchar sind, der Unicode-Zeichen unterstützt. ASCII-Neuzeilenzeichen (Wagenrücklauf und Zeilenvorschub, dargestellt als CHAR(13) bzw. CHAR(10) können nicht direkt in eine Nvarchar-Zeichenfolge eingefügt werden, ohne in Unicode konvertiert zu werden.
Die Lösung:
Um dieses Problem zu beheben, sollten die Unicode-Darstellungen der Newline-Zeichen verwendet werden stattdessen:
set @rich_text_to_modify = replace(@rich_text_to_modify,'<br>', NCHAR(13)+NCHAR(10))
NCHAR(13) und NCHAR(10) repräsentieren Unicode-Wagenrücklauf- bzw. Zeilenvorschubzeichen. Durch die Verwendung dieser Unicode-Zeichen wird sichergestellt, dass die Zeilenumbrüche korrekt in die Nvarchar-Zeichenfolge eingefügt werden.
Zusätzliche Überlegungen:
Das obige ist der detaillierte Inhalt vonWie füge ich Zeilenumbrüche korrekt in Nvarchar-Zeichenfolgen in SQL Server ein?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!