デスティネーションテーブルを定義せずにBulkCopyを使用する方法

c# datatable sql sqlbulkcopy

質問

すべて、

私は以下のBulkCopy操作を持っています:

// Convert the FlexGrid to a DataTable.
DataTable currData = (DataTable)c1ErrFlexGrid.DataSource;

// Insert the data into the database.
SqlBulkCopy SqlBulkIns = new SqlBulkCopy(strConnString, SqlBulkCopyOptions.Default);
SqlBulkIns.BatchSize = 5000;
SqlBulkIns.DestinationTableName = String.Format("dbo.{0}", strTableName);
SqlBulkIns.WriteToServer(currData);

strConnectionStringは、定義された有効な接続文字列です。テーブルstrTableNameが存在し、フィールドが定義されている場合、これは過去にstrTableName 。実行時に定義されたDataTableに対してこのBulkCopy操作を実行したいと思いDataTable 。つまり、SQLで表構造を事前定義する必要はありません。これは可能ですか?もしそうなら、どうですか?

御時間ありがとうございます。

受け入れられた回答

このSqlTableCreatorオブジェクトを使用して、データテーブルからSQLテーブルを作成し、一括挿入を実行することができます。



ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ
ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ