私はCraigslistに似たWebサイトを構築しています。HTML形式のテキスト(太字/斜体/フォントサイズなど)をSQL 2008データベースに保存する方法を知りたいですか?
つまり、ユーザーはテキストを入力し、フォントサイズ、太字などでフォーマットして、情報を保存します。それをデータベースに保存する最も効率的な方法は何ですか?
私はCraigslistに似たWebサイトを構築しています。HTML形式のテキスト(太字/斜体/フォントサイズなど)をSQL 2008データベースに保存する方法を知りたいですか?
つまり、ユーザーはテキストを入力し、フォントサイズ、太字などでフォーマットして、情報を保存します。それをデータベースに保存する最も効率的な方法は何ですか?
nvarchar(max) フィールドに保存します。セキュリティのために、必ずパラメーター化されたクエリを使用してください。http://www.aspnet101.com/2007/03/parameterized-queries-in-asp-net/を読む
特定の限られた数の HTML タグのみを許可するようにしてください。そうしないと、クロス スクリプト インジェクションが発生する危険があります。
たとえば、ユーザーがタグを入力<script>
できないようにします。<style>
先に進む前に、クロス スクリプト インジェクションについて詳しく読むことをお勧めします。幸運を
おそらく、広告テキストを nvarchar(max) データ型として保存するだけです
XML データ型ではなく、NVARCHAR(max) または Text データ型を使用するだけです。
これにより、xml データ型を途中で変換する必要があるコンテンツに簡単にアクセスできます。
そのまま NVARCHAR(MAX) フィールドに詰め込むだけです。
もちろん、これにはパラメーター化されたクエリを使用します。
SQL Server 2008 以降を使用している場合は、nvarchar(MAX) フィールドに入れます。SQL Server 2005 以前を使用していて、文字数が 2000 未満になる場合は、nvarchar(2000) 型を使用できます。それが制限しすぎる場合は、テキスト タイプを使用します。