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のドキュメントによると。)