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
| Property | Value |
|---|---|
| AreTableHintsSupported | false |
| ClosingQuote | " |
| DefaultSchema | null |
| IsAffectedRowsSupported | true |
| IsDirectionSupported | false |
| IsExecuteReaderDisposable | false |
| IsMultiStatementExecutable | false |
| IsPreparable | true |
| IsTransactionSupported | true |
| IsUseUpsert | false |
| MaxParameterCount | 1500 |
| MultiStatementSeparator | ; |
| OpeningQuote | " |
| ParameterPrefix | @ |
| SqlTextParameterPrefix | @ |
IsMultiStatementExecutableisfalse—FbCommandcannot 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 explicitbatchSizegreater than1to any of them throws aNotSupportedException.
MaxParameterCountis1500— lower than the2098most other providers default to — reflecting Firebird’s DSQL parser rejecting anIN (...)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);