1

約 100,000 以上の区切りテキスト ファイルがあります (各ファイルに同じ数の列がありません。たとえば、10 列のファイルもあれば、20 列のファイルもあります)。それらすべてを SQL サーバーにアップロードする必要があります。どうすればいいですか?

ファイルが保存されている名前/パスと、各テキストファイルの列数をリストしたExcelスプレッドシートもあります。私はそれについてどうやって行くのか分かりません。

前もって感謝します

4

1 に答える 1

0

C# (または他のプログラミング言語) を使用して、タスクを完了するのに役立つアプリを作成できると思います。プログラムは次のことを行う必要があります。

  1. すべてのファイルを実行し、必要なすべての列を決定します。

  2. プログラムが検出した列を使用して、SQL サーバー上にテーブルを作成します。varchar(max)各列のデータ型を設定します。

  3. すべてのファイルをもう一度実行し、テーブルにデータを挿入します。あなたが行くことができる2つの方法があります:

    a) 行ごとにデータを挿入します。かなり遅いですが、単純です。

    b) C# を使用している場合は、独自のクラスを実装し、クラスをDataReader使用SqlBulkCopyしてデータをテーブルに一括挿入できます

ここにあなたを助けるかもしれないいくつかのリンクがあります:

http://www.sqlteam.com/article/use-sqlbulkcopy-to-quickly-load-data-from-your-client-to-sql-server

http://www.michaelbowersox.com/2011/12/22/using-a-custom-idatareader-to-stream-data-into-a-database/

http://daniel.wertheim.se/2010/11/10/c-custom-datareader-for-sqlbulkcopy/

于 2013-05-23T07:04:02.633 に答える