2016-10-18 18 views
0

巨大なデータを持つFLATファイル(TARABITES内)からチャンク/バッチにデータをロードしたい。 1-10000,10001-20000などのようなチャンクをステージングテーブルにロードする場合は、ステージングテーブルのメモリが制限されています。 データがステージングテーブルにロードされると、データを最終テーブルにロードします。 いくつかのC#スクリプトでは、id番号からTO id番号に変数を渡すことができます。C#を使用したフラットファイルからSQLテーブルへのチャンク/バッチのデータのインポート

ありがとうございます。

答えて

0

私は過去に同様のことをしました。ここには大まかな構文があります。これはSql to Sql用です。 ODBCを使用してテキストファイルを照会する方法については、下のリンクを参照してください。

 int Start = 1; 
     int End = 10000; 
     using (SqlConnection SqlCon = new SqlConnection()) 
     { 
      string Sql = $"Select * From Table Where Id Between {Start} and {End}"; 
      SqlCommand SqlCmd = new SqlCommand(Sql); 
      SqlDataReader reader = SqlCmd.ExecuteReader(); 

      SqlBulkCopy bulk = new SqlBulkCopy(SqlCon); 
      bulk.DestinationTableName = "StagingTable"; 
      bulk.WriteToServer(reader); 
     } 

http://www.c-sharpcorner.com/article/accessing-text-files-using-odbc-data-provider/

+0

こんにちは@Joe C、返信いただきありがとうございます。 しかし、もし私がいくつかの回避策を提案したり、フラットファイル(私は1-1000のような意味)からレコードの限られた数を読んで、SQLテーブルにロードする必要があるいくつかのスクリプトを提供することができれば、私は(1001-3000)してSQLテーブルにそれらをロードする場合は次回にまた。 ステージングテーブルにはスペースが限られているため、限られたレコードしかロードせず、次回最終テーブルにロードする必要があることに注意してください。 親切にも、この要件をssis/ssisスクリプトコンポーネントで提供するのに助けてくれます。 – user3518078

+0

このスクリプトはSSISで使用できます。 –

関連する問題