0

SQL Server 2012 で長い XML 文字列を保存する必要があります。

現在EDMX、データベースに文字列変数と文字列列を保持しています。
問題は、XML 文字列が非常に長くなる可能性があることです (> 5000 文字)

この変数を処理するためのベスト プラクティスは何ですか (C# と SQL Server の両方)?

XML 列を使用する利点は何ですか?

4

1 に答える 1

0

XML 列を使用することの正確な利点についてはよくわかりませんが、個人的には、XML 列を使用することは理にかなっていると思います。または、5000 文字を超える長さの XML ファイルを格納するために使用できる他のデータ型があります。

text/ntext なども見たいと思うかもしれません。

ここで T-SQL データ型を見てください: http://msdn.microsoft.com/en-us/library/ms187752.aspx

C# で何が最適に使用されるかという点では、基本的にすべての XML は単なる文字列ですが、たとえば、XML を最初に文字列に変換するのではなく、データベースから直接 XmlReader または XmlDocument に読み込むことができます。必要に応じてそれを解析します (考える材料です!)

注: 個人的な経験から、私は独自の Entity Framework を構築しました (NHibernate や Microsoft の Entity Framework とは関係ありません)。これにより、任意のデータベース構造で XML をデータ型として使用できます。たとえば、T-SQL では、XML としてマップされたオブジェクトを XML データ型に格納しますが、XML 型が実装されていない RDBMS システムでは、Entity Framework が適切に次に近い適切な代替手段に劣化します。

于 2012-12-11T10:12:08.000 に答える