0

ストアド プロシージャ内では、CSV ファイル全体を文字列として取得し、1 つの「列」内のすべての値を取り出して、データベースに対してさらにクエリを実行する必要があります。

保存されたドキュメントを使用できないため、openrowset を除外すると思います。ストアド プロシージャ内ですべてを実行する必要があります。

グーグルで何時間もかけて試してみましたが、良い答えを見つけることができます。1つの可能性はhttp://www.tainyan.com/articles/entry-32/converting-csv-to-sql-data-table-with-stored-procedure.htmlでしたが、機能せず、エラーを見つけることができます。

これはどのように行うべきですか?

4

1 に答える 1

1

これはあまり好きではありませんが、csv 列が同じ列インデックスのままであれば機能します。これのパフォーマンスには注意が必要ですが、うまくいくかもしれません。

ここでフィドルを参照してください:http://sqlfiddle.com/#!3/336b7/1

基本的に、csv ファイルを xml に変換し、xml 型にキャストしてから、xml に対してクエリを実行します。

于 2012-08-17T14:34:28.683 に答える