FOR XML Explicit Performanceの改善
-
03-07-2019 - |
質問
SQL FOR XML EXPLICITの使用は面倒ですが、頻繁に使用することに気づきました。生成されたXMLドキュメントを完全に制御できるため。
パフォーマンスに問題があります。たった1か月分の財務データ(請求書、請求書など)を記述するXMLドキュメントを生成するのに5分以上かかることがあります!
そのため、パフォーマンスを向上させるためのヒントを探していました。 またはパフォーマンスを向上させる他の方法で置き換えることもできます。
解決
XMLが生成後に処理のためにアプリケーション(Webアプリケーションなど)に渡される場合、1つの代替方法は、SQLで通常のレコードセットを生成し、呼び出し側アプリケーションにXMLドキュメントを作成させることです。または、SQLがFOR XML AUTOを使用して、必要なよりも単純な形式のXMLを生成し、呼び出し側アプリケーションがXSLTスタイルシートを使用して正しいXML形式に変換することができます。
もちろん、元のSQLがXMLにフォーマットされているかどうかに関係なく、元のSQLに潜在的なパフォーマンスの問題がないことを確認する必要があります(つまり、データベースにインデックスが欠落している、など)
所属していません StackOverflow