linq2db by Igor Tkachev, Ilya Chudin, Svyatoslav Danyliv, Dmitry Lukashenko

<PackageReference Include="linq2db" Version="2.9.6" />

 SQLiteExtensions

public static class SQLiteExtensions
public static void FTS3AutoMerge<TEntity>(this DataConnection dc, ITable<TEntity> table, int segments)

Executes FTS3/FTS4 'automerge' command for specific table. Example: "INSERT INTO table(table) VALUES('automerge=segments')".

public static void FTS3IntegrityCheck<TEntity>(this DataConnection dc, ITable<TEntity> table)

Executes FTS3/FTS4 'integrity-check' command for specific table. Example: "INSERT INTO table(table) VALUES('integrity-check')".

public static byte[] FTS3MatchInfo<TEntity>(this ISQLiteExtensions ext, TEntity entity)

FTS3/4 matchinfo(fts_table) function. Example: "matchinfo(table)".

public static byte[] FTS3MatchInfo<TEntity>(this ISQLiteExtensions ext, TEntity entity, string format)

FTS3/4 matchinfo(fts_table, format) function. Example: "matchinfo(table, 'format')".

public static void FTS3Merge<TEntity>(this DataConnection dc, ITable<TEntity> table, int blocks, int segments)

Executes FTS3/FTS4 'merge' command for specific table. Example: "INSERT INTO table(table) VALUES('merge=blocks,segments')".

public static string FTS3Offsets<TEntity>(this ISQLiteExtensions ext, TEntity entity)

FTS3/4 offsets(fts_table) function. Example: "offsets(table)".

public static void FTS3Optimize<TEntity>(this DataConnection dc, ITable<TEntity> table)

Executes FTS3/FTS4 'optimize' command for specific table. Example: "INSERT INTO table(table) VALUES('optimize')".

public static void FTS3Rebuild<TEntity>(this DataConnection dc, ITable<TEntity> table)

Executes FTS3/FTS4 'rebuild' command for specific table. Example: "INSERT INTO table(table) VALUES('rebuild')".

public static string FTS3Snippet<TEntity>(this ISQLiteExtensions ext, TEntity entity)

FTS3/4 snippet(fts_table) function. Example: "snippet(table)".

public static string FTS3Snippet<TEntity>(this ISQLiteExtensions ext, TEntity entity, string startMatch)

FTS3/4 snippet(fts_table, startMatch) function. Example: "snippet(table, 'startMatch')".

public static string FTS3Snippet<TEntity>(this ISQLiteExtensions ext, TEntity entity, string startMatch, string endMatch)

FTS3/4 snippet(fts_table, startMatch, endMatch) function. Example: "snippet(table, 'startMatch', 'endMatch')".

public static string FTS3Snippet<TEntity>(this ISQLiteExtensions ext, TEntity entity, string startMatch, string endMatch, string ellipses)

FTS3/4 snippet(fts_table, startMatch, endMatch, ellipses) function. Example: "snippet(table, 'startMatch', 'endMatch', 'ellipses')".

public static string FTS3Snippet<TEntity>(this ISQLiteExtensions ext, TEntity entity, string startMatch, string endMatch, string ellipses, int columnIndex)

FTS3/4 snippet(fts_table, startMatch, endMatch, ellipses, columnIndex) function. Example: "snippet(table, 'startMatch', 'endMatch', 'ellipses', columnIndex)".

public static string FTS3Snippet<TEntity>(this ISQLiteExtensions ext, TEntity entity, string startMatch, string endMatch, string ellipses, int columnIndex, int tokensNumber)

FTS3/4 snippet(fts_table, startMatch, endMatch, ellipses, columnIndex, tokensNumber) function. Example: "snippet(table, 'startMatch', 'endMatch', 'ellipses', columnIndex, tokensNumber)".

public static void FTS5AutoMerge<TEntity>(this DataConnection dc, ITable<TEntity> table, int value)

Executes FTS5 'automerge' command for specific table. Example: "INSERT INTO table(table, rank) VALUES('automerge', value)".

public static double FTS5bm25<TEntity>(this ISQLiteExtensions ext, TEntity entity)

FTS5 bm25(fts_table) function. Example: "bm25(table)".

public static double FTS5bm25<TEntity>(this ISQLiteExtensions ext, TEntity entity, double[] weights)

FTS5 bm25(fts_table, ...weights) function. Example: "bm25(table, col1_weight, col2_weight)".

public static void FTS5CrisisMerge<TEntity>(this DataConnection dc, ITable<TEntity> table, int value)

Executes FTS5 'crisismerge' command for specific table. Example: "INSERT INTO table(table, rank) VALUES('crisismerge', value)".

public static void FTS5Delete<TEntity>(this DataConnection dc, ITable<TEntity> table, int rowid, TEntity record)

Executes FTS5 'delete' command for specific table. Example: "INSERT INTO table(table, rowid, col1, col2) VALUES('delete', rowid, 'col1_value', 'col2_value')".

public static void FTS5DeleteAll<TEntity>(this DataConnection dc, ITable<TEntity> table)

Executes FTS5 'delete-all' command for specific table. Example: "INSERT INTO table(table) VALUES('delete-all')".

public static string FTS5Highlight<TEntity>(this ISQLiteExtensions ext, TEntity entity, int columnIndex, string startMatch, string endMatch)

FTS5 highlight(fts_table, columnIndex, startMatch, endMatch) function. Example: "highlight(table, columnIndex, 'startMatch', 'endMatch')".

public static void FTS5IntegrityCheck<TEntity>(this DataConnection dc, ITable<TEntity> table)

Executes FTS5 'integrity-check' command for specific table. Example: "INSERT INTO table(table) VALUES('integrity-check')".

public static void FTS5Merge<TEntity>(this DataConnection dc, ITable<TEntity> table, int value)

Executes FTS5 'merge' command for specific table. Example: "INSERT INTO table(table, rank) VALUES('merge', value)".

public static void FTS5Optimize<TEntity>(this DataConnection dc, ITable<TEntity> table)

Executes FTS5 'optimize' command for specific table. Example: "INSERT INTO table(table) VALUES('optimize')".

public static void FTS5Pgsz<TEntity>(this DataConnection dc, ITable<TEntity> table, int value)

Executes FTS5 'pgsz' command for specific table. Example: "INSERT INTO table(table, rank) VALUES('pgsz', value)".

public static void FTS5Rank<TEntity>(this DataConnection dc, ITable<TEntity> table, string function)

Executes FTS5 'rank' command for specific table. Example: "INSERT INTO table(table, rank) VALUES('rank', 'function')".

public static void FTS5Rebuild<TEntity>(this DataConnection dc, ITable<TEntity> table)

Executes FTS5 'rebuild' command for specific table. Example: "INSERT INTO table(table) VALUES('rebuild')".

public static string FTS5Snippet<TEntity>(this ISQLiteExtensions ext, TEntity entity, int columnIndex, string startMatch, string endMatch, string ellipses, int tokensNumber)

FTS5 snippet(fts_table, columnIndex, startMatch, endMatch, ellipses, tokensNumber) function. Example: "snippet(table, columnIndex, 'startMatch', 'endMatch', 'ellipses', tokensNumber)".

public static void FTS5UserMerge<TEntity>(this DataConnection dc, ITable<TEntity> table, int value)

Executes FTS5 'usermerge' command for specific table. Example: "INSERT INTO table(table, rank) VALUES('usermerge', value)".

public static bool Match(this ISQLiteExtensions ext, object entityOrColumn, string match)

Applies full-text search condition using MATCH predicate against whole FTS table or specific column. Examples: "table MATCH 'search query'"/"table.column MATCH 'search query'".

public static IQueryable<TEntity> MatchTable<TEntity>(this ISQLiteExtensions ext, ITable<TEntity> table, string match)

Performs full-text search query against against speficied table and returns search results. Example: "table('search query')".

public static double? Rank<TEntity>(this ISQLiteExtensions ext, TEntity entity)

Provides access to FTS5 rank hidden column. Example: "table.rank".

public static int RowId<TEntity>(this ISQLiteExtensions ext, TEntity entity)

Provides access to rowid hidden column. Example: "table.rowid".

public static ISQLiteExtensions SQLite(this ISqlExtension ext)