Table of Contents

Class SQLiteDelegate

Namespace
Quartz.Impl.AdoJobStore
Assembly
Quartz.dll

This is a driver delegate for the SQLiteDelegate ADO.NET driver.

public class SQLiteDelegate : StdAdoDelegate, IDriverDelegate, IDbAccessor
Inheritance
SQLiteDelegate
Implements
Inherited Members

Properties

SchemaResourceName

The embedded script that creates this dialect's schema, or null when this delegate has none.

protected override string? SchemaResourceName { get; }

Property Value

string

Remarks

Null on StdAdoDelegate itself, because there is no dialect-neutral DDL: the six shipped delegates each name their own script, and a delegate written outside Quartz names one or leaves provisioning unavailable. Overriding it is the whole of what a delegate has to do to support CreateIfMissing.

The name is a manifest resource name, looked for in the assembly of the delegate's own type and then in each assembly up its base chain. So a delegate of somebody else's can embed a script of its own beside itself, and one that subclasses a shipped dialect delegate to change a statement or two inherits that dialect's script rather than having to carry a copy.

Methods

AddPagingParameters(DbCommand, int, int, bool)

Binds the LIMIT/OFFSET parameters in the order the clause names them, which is the reverse of the ANSI clause's order and matters to providers that bind positionally.

protected override void AddPagingParameters(DbCommand cmd, int skip, int take, bool takeLimited)

Parameters

cmd DbCommand
skip int
take int
takeLimited bool

ApplyPaging(string, bool)

SQLite pages with LIMIT/OFFSET rather than the ANSI clause. A negative LIMIT means no limit, which is how SQLite writes an offset without one.

protected override string ApplyPaging(string sql, bool takeLimited)

Parameters

sql string
takeLimited bool

Returns

string

GetRowLimit(int)

SQLite limits rows with a trailing LIMIT n.

protected override SqlRowLimit GetRowLimit(int count)

Parameters

count int

Returns

SqlRowLimit