Class FirebirdBulkCopy
- Namespace
- LinqToDB.Internal.DataProvider.Firebird
- Assembly
- linq2db.dll
public class FirebirdBulkCopy : BasicBulkCopy
- Inheritance
-
FirebirdBulkCopy
- Inherited Members
- Extension Methods
Constructors
FirebirdBulkCopy(FirebirdDataProvider)
public FirebirdBulkCopy(FirebirdDataProvider dataProvider)
Parameters
dataProviderFirebirdDataProvider
Properties
CastAllRowsParametersOnUnionAll
protected override bool CastAllRowsParametersOnUnionAll { get; }
Property Value
CastFirstRowLiteralOnUnionAll
protected override bool CastFirstRowLiteralOnUnionAll { get; }
Property Value
CastFirstRowParametersOnUnionAll
protected override bool CastFirstRowParametersOnUnionAll { get; }
Property Value
MaxMultipleRows
protected override int? MaxMultipleRows { get; }
Property Value
- int?
MaxParameters
protected override int MaxParameters { get; }
Property Value
Remarks
Based on https://github.com/FirebirdSQL/firebird/blob/799bca3ca5f9eb604433addc0f2b7cb3b6c07275/src/dsql/DsqlCompilerScratch.cpp#L528 Max is 65536/2. We subtract one from that in case ADO provider uses parameter for statement.
MaxSqlLength
protected override int MaxSqlLength { get; }
Property Value
Remarks
Number based on http://www.firebirdfaq.org/faq197/ Firebird 2.5 has 64k limit, Firebird 3.0+ 10MB.
Methods
CastLiteral(ColumnDescriptor)
protected override bool CastLiteral(ColumnDescriptor column)
Parameters
columnColumnDescriptor
Returns
MultipleRowsCopyAsync<T>(ITable<T>, DataOptions, IAsyncEnumerable<T>, CancellationToken)
protected override Task<BulkCopyRowsCopied> MultipleRowsCopyAsync<T>(ITable<T> table, DataOptions options, IAsyncEnumerable<T> source, CancellationToken cancellationToken) where T : notnull
Parameters
tableITable<T>optionsDataOptionssourceIAsyncEnumerable<T>cancellationTokenCancellationToken
Returns
Type Parameters
T
MultipleRowsCopyAsync<T>(ITable<T>, DataOptions, IEnumerable<T>, CancellationToken)
protected override Task<BulkCopyRowsCopied> MultipleRowsCopyAsync<T>(ITable<T> table, DataOptions options, IEnumerable<T> source, CancellationToken cancellationToken) where T : notnull
Parameters
tableITable<T>optionsDataOptionssourceIEnumerable<T>cancellationTokenCancellationToken
Returns
Type Parameters
T
MultipleRowsCopy<T>(ITable<T>, DataOptions, IEnumerable<T>)
protected override BulkCopyRowsCopied MultipleRowsCopy<T>(ITable<T> table, DataOptions options, IEnumerable<T> source) where T : notnull
Parameters
tableITable<T>optionsDataOptionssourceIEnumerable<T>
Returns
Type Parameters
T