OracleBulkImportPseudoTableType
This enum defines the type of staging (pseudo) table created during bulk-import operations. It applies only to Oracle.
It is used by the following bulk operations.
Enum Values
| Name | Description |
|---|---|
| Auto | Chooses between Physical and Memory based on row count (Physical at 5,000 rows or more). This is the default. |
| Memory | A Global Temporary Table, private to each session. Safe for concurrent/multi-connection workloads. |
| Physical | An ordinary heap table, shared by every session. Only safe for sequential (non-concurrent) workloads against the same target table. |
Every value currently resolves to
Physicalat runtime. ODP.NET’s direct-path load — used internally by every bulk operation — cannot write into a Global Temporary Table, failing withORA-39826. This is a temporary driver-level limitation;AutoandMemoryare kept in the enum so existing code doesn’t need to change once a working strategy is implemented. See Bulk Operations (Oracle) for details.
Usability
Pass the value to the pseudoTableType argument of the target operation.
using (var connection = new OracleConnection(connectionString))
{
var people = GetPeople(1000);
var insertedRows = connection.BulkInsert(people,
pseudoTableType: OracleBulkImportPseudoTableType.Physical);
}