Link Search Menu Expand Document

FirebirdDbSetting


This class is the BaseDbSetting-derived implementation for Firebird. It is automatically registered by FirebirdBootstrap — you do not need to instantiate it directly under normal use.

Configured Values

PropertyValue
AreTableHintsSupportedfalse
ClosingQuote"
DefaultSchemanull
IsAffectedRowsSupportedtrue
IsDirectionSupportedfalse
IsExecuteReaderDisposablefalse
IsMultiStatementExecutablefalse
IsPreparabletrue
IsTransactionSupportedtrue
IsUseUpsertfalse
MaxParameterCount1500
MultiStatementSeparator;
OpeningQuote"
ParameterPrefix@
SqlTextParameterPrefix@

IsMultiStatementExecutable is falseFbCommand cannot execute multiple statements in a single round trip, so InsertAll, MergeAll and UpdateAll issue one statement per row instead of a single batched command. Passing an explicit batchSize greater than 1 to any of them throws a NotSupportedException.

MaxParameterCount is 1500 — lower than the 2098 most other providers default to — reflecting Firebird’s DSQL parser rejecting an IN (...) list past roughly 1500 members with "Implementation limit exceeded".

Usability

Use DbSettingMapper to override it with a custom implementation.

DbSettingMapper.Add(typeof(FbConnection), new MyCustomFirebirdDbSetting(), true);