OracleBulkCopyOptionsの列挙
OracleBulkCopyOptions
の列挙は、OracleBulkCopy
クラスのインスタンスと組み合せることができ、列挙の動作とインスタンスのWriteToServer
メソッドの動作を識別するオプションとして使用可能な値を指定します。
表17-17は、すべてのOracleBulkCopyOptions
の列挙値と、それぞれの列挙値の説明をリストします。
表17-17 OracleBulkCopyOptionsの列挙メンバー
メンバー名 | 説明 |
---|---|
|
すべてのオプションに対してデフォルト値が使用可能であることを示します |
|
ダイレクト・パス・ロードによって索引関連のエラーが発生した場合にロードが中断されることを示します。行はロードされず、索引は変更されません。このオプションが指定されておらず、ダイレクト・パス・ロードによって索引が使用不可になった場合は、行がロードされ、索引は使用不可状態のままになります。 Oracleデータベースの主キー制約および一意制約は、一意索引を使用して強制適用されます。つまり、データベースによって自動的に、主キーまたは一意として指定された列に対して、一意索引が作成されます。したがって、このオプションは、主キー制約と一意制約のみに影響します。 このオプションの動作は、 このメンバーは、管理対象ODP.NETおよびODP.NET Core 23.8以上でサポートされています。 ノート: ODP.NET一括コピーの使用中に、チェック制約とNOT NULL制約が自動的に強制適用されますが、外部キー制約が強制適用されることはありません。 |
|
一括コピーですべての行が処理されたときに、通知を送信してそれを示します。このメンバーは、 たとえば、
設計上、 このメンバーは、バージョン23.5、21.15および19.24以降の管理対象ODP.NETおよびODP.NET Coreでのみサポートされます。 |
|
トランザクション内で一括コピー操作のバッチが発生することを示します。一括コピー操作の実行に使用される接続がすでにトランザクションの一部である場合、 このメンバーが指定されていない場合、トランザクションに関連したアクティビティなしに、行の |
ノート:
すべての一括コピー操作は、アプリケーションによって作成されるローカル・トランザクションまたは分散トランザクションに関係なく有効です。
要件
プロバイダ | ODP.NET管理対象外ドライバ | ODP.NET管理対象ドライバ | ODP.NET Core |
---|---|---|---|
アセンブリ |
|
|
|
ネームスペース |
|
|
|
.NET Framework |
システム要件を参照してください |
システム要件を参照してください |
- |
.NET (Core) |
- |
- |
システム要件を参照してください |
サンプル・コード: NotifyAllRowsProcessed
// Set up the bulk copy object so that it will notify the app when all rows have been copied. using (OracleBulkCopy bulkCopy = new OracleBulkCopy(destinationConnection, OracleBulkCopyOption.NotifyAllRowsProcessed)) { bulkCopy.DestinationTableName = "BLOGS"; try { // Write rows from the source to the destination. bulkCopy.NotifyAfter = 5; // OnSqlRowsCopied is the event handler delegate whenever NotifyAfter or NotifyAlRowsProcessed sends a notification. OnSqlRowsCopied's implementation is not included in this code sample. bulkCopy.OracleRowsCopied += new OracleRowsCopiedEventHandler(OnSqlRowsCopied); bulkCopy.WriteToServer(reader); } catch (Exception ex) { Console.WriteLine(ex.Message); } finally { // Close the OracleDataReader. The OracleBulkCopy object is automatically closed at the end of the using block. reader.Close(); } }
関連項目: