4

これは私の最初の投稿です...そして、これについて本当に助けが必要なので、この件についてある程度の知識を持っている人は誰でも助けてください!

私がする必要があるのは、xml ファイルを sql サーバーのデータ テーブルに読み込むことです。私はこれに対する解決策を何度も探していましたが、実際にいくつか見つけました。問題は、ロードされている xml のサイズです。それは2GBの重さです(そして10GBのものがあります). 私はこれを行うことができましたが、私には素晴らしいと思われる特定の解決策を見ましたが、それを理解することはできません.

では、本題に入りましょう。現在、私はこのようにしています:

  • openrowset を使用して XML 全体を変数に読み込みました。(これはRAMメモリ全体を使用します...)
  • 次に、.node() を使用してデータを取り出し、テーブルにデータを入力します。

これは 2 段階のプロセスです。ワンステップでできるかな?と思いました。フォーマットファイルのようなものがあり、それを使用してフラットファイルからデータを引き出したり、レコードベースの方法でドキュメントをエクセルしたりする方法に関する多数の例があることがわかりました(すべてを変数に吸い込むのではなく)が、私はその巨大な XML をその場でデータを解析するテーブルに読み込む方法を示す例を見つけることができません (フォーマット ファイルに基づいて)。それは可能ですか?良い例をどこで見つけるかについての助け、またはガイダンスを本当に感謝します。

私の英語を許してください-私がその言語でそんなに多くを書かなければならなかったのは久しぶりです:-) よろしくお願いします!

4

1 に答える 1

5

非常に大きなファイルの場合は、SSIS: Loading XML data into SQL Server 2008 を使用できます。

これにより、XML データを柔軟に変換できるだけでなく、非常に大きなファイルのメモリ フットプリントを削減できます。もちろん、BULK モードで OPENROWSET を使用する場合に比べて遅くなる可能性があります。

于 2011-01-19T00:42:18.537 に答える