2

DataTable一括コピーで Oracle データベースにアップロードします。db に挿入された行数を知りたいです。最近、私はSQL Serverに対して同じことをしていましたが、私が見つけたのは次のとおりです。

FieldInfo rowsCopiedField = typeof(SqlBulkCopy).GetField("_rowsCopied", BindingFlags.NonPublic | BindingFlags.GetField | BindingFlags.Instance);

return (int)rowsCopiedField.GetValue(bulkCopy);

そしてそれはうまくいきました(正しい行数を返しました)。残念ながら、これは OracleBulkCopy では機能しません。行数を取得するには?

編集: OracleRowsCopied イベントの使用は無意味ですNotifyAfter。これは、処理された行数の後にイベントがトリガーされ、db に追加されないためです。(Oracleのドキュメントによると。)

4

1 に答える 1