ホームページ > データベース > mysql チュートリアル > SQL Server で nvarchar 文字列に改行を正しく挿入するにはどうすればよいですか?

SQL Server で nvarchar 文字列に改行を正しく挿入するにはどうすればよいですか?

Patricia Arquette
リリース: 2024-12-18 09:56:11
オリジナル
402 人が閲覧しました

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

nvarchar 文字列での改行挿入の修正

SQL Server でリッチ テキストを操作し、それをプレーン テキストに変換する必要がある場合、一般的なタスクは、HTML の改行 (
) を改行に置き換えることです。ただし、単に REPLACE 関数を使用すると、改行が正しく挿入されない可能性があります。

問題:

この例では、エンコーディングが原因で問題が発生します。改行文字の。 REPLACE 関数は、パラメータが Unicode 文字をサポートする nvarchar データ型であることを想定しています。 ASCII 改行文字 (キャリッジ リターンとライン フィード、それぞれ CHAR(13) と CHAR(10) で表されます) は、Unicode に変換せずに nvarchar 文字列に直接挿入できません。

解決策:

これを解決するには、改行文字の Unicode 表現を使用する必要があります。代わりに:

set @rich_text_to_modify = replace(@rich_text_to_modify,'<br>', NCHAR(13)+NCHAR(10))
ログイン後にコピー

NCHAR(13) と NCHAR(10) は、それぞれ Unicode の復帰文字と改行文字を表します。これらの Unicode 文字を使用すると、改行が nvarchar 文字列に正しく挿入されます。

追加の考慮事項:

  • SQL Server Management Studio (SSMS)オプション: SQL Server Management Studio のオプションで [コピーまたは保存時に CR/LF を保持する] オプションが有効になっていることを確認します。メニュー ([ツール] -> [オプション])。このオプションでは、結果をグリッドまたはファイルにコピーまたは保存するときに改行が保持されます。
  • データベース互換性: SQL Server での Unicode サポートはデータベース互換性レベルによって異なります。データベースが SQL Server 2012 以降など、Unicode をサポートする互換性レベルに設定されていることを確認してください。

以上がSQL Server で nvarchar 文字列に改行を正しく挿入するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート