Table of Contents

Class SqliteObjectExtensions

Namespace
LfrlAnvil.Sqlite.Extensions
Assembly
LfrlAnvil.Sqlite.dll

Contains various SqlObjectBuilder and SqlObject extension methods.

public static class SqliteObjectExtensions
Inheritance
SqliteObjectExtensions
Inherited Members

Remarks

SqliteDialect implementation.

Methods

CreateIndex(SqliteConstraintBuilderCollection, params SqlOrderByNode[])

Creates a new index builder with a default name.

public static SqliteIndexBuilder CreateIndex(this SqliteConstraintBuilderCollection constraints, params SqlOrderByNode[] columns)

Parameters

constraints SqliteConstraintBuilderCollection

Source collection.

columns SqlOrderByNode[]

Collection of columns that define the index.

Returns

SqliteIndexBuilder

New SqlIndexBuilder instance.

Exceptions

SqlObjectBuilderException

When index constraint could not be created.

CreateIndex(SqliteConstraintBuilderCollection, string, params SqlOrderByNode[])

Creates a new index builder.

public static SqliteIndexBuilder CreateIndex(this SqliteConstraintBuilderCollection constraints, string name, params SqlOrderByNode[] columns)

Parameters

constraints SqliteConstraintBuilderCollection

Source collection.

name string

Name of the index constraint.

columns SqlOrderByNode[]

Collection of columns that define the index.

Returns

SqliteIndexBuilder

New SqlIndexBuilder instance.

Exceptions

SqlObjectBuilderException

When index constraint could not be created.

CreateUniqueIndex(SqliteConstraintBuilderCollection, params SqlOrderByNode[])

Creates a new unique index builder with a default name.

public static SqliteIndexBuilder CreateUniqueIndex(this SqliteConstraintBuilderCollection constraints, params SqlOrderByNode[] columns)

Parameters

constraints SqliteConstraintBuilderCollection

Source collection.

columns SqlOrderByNode[]

Collection of columns that define the index.

Returns

SqliteIndexBuilder

New SqlIndexBuilder instance.

Exceptions

SqlObjectBuilderException

When index constraint could not be created.

CreateUniqueIndex(SqliteConstraintBuilderCollection, string, params SqlOrderByNode[])

Creates a new unique index builder.

public static SqliteIndexBuilder CreateUniqueIndex(this SqliteConstraintBuilderCollection constraints, string name, params SqlOrderByNode[] columns)

Parameters

constraints SqliteConstraintBuilderCollection

Source collection.

name string

Name of the index constraint.

columns SqlOrderByNode[]

Collection of columns that define the index.

Returns

SqliteIndexBuilder

New SqlIndexBuilder instance.

Exceptions

SqlObjectBuilderException

When index constraint could not be created.

ForSqlite(ISqlCheckBuilder, Action<SqliteCheckBuilder>)

Invokes the provided action only when the builder is an instance of SqliteCheckBuilder type.

public static ISqlCheckBuilder ForSqlite(this ISqlCheckBuilder builder, Action<SqliteCheckBuilder> action)

Parameters

builder ISqlCheckBuilder

Source builder.

action Action<SqliteCheckBuilder>

Action to invoke.

Returns

ISqlCheckBuilder

builder.

ForSqlite(ISqlColumnBuilder, Action<SqliteColumnBuilder>)

Invokes the provided action only when the builder is an instance of SqliteColumnBuilder type.

public static ISqlColumnBuilder ForSqlite(this ISqlColumnBuilder builder, Action<SqliteColumnBuilder> action)

Parameters

builder ISqlColumnBuilder

Source builder.

action Action<SqliteColumnBuilder>

Action to invoke.

Returns

ISqlColumnBuilder

builder.

ForSqlite(ISqlDatabaseBuilder, Action<SqliteDatabaseBuilder>)

Invokes the provided action only when the builder is an instance of SqliteDatabaseBuilder type.

public static ISqlDatabaseBuilder ForSqlite(this ISqlDatabaseBuilder builder, Action<SqliteDatabaseBuilder> action)

Parameters

builder ISqlDatabaseBuilder

Source builder.

action Action<SqliteDatabaseBuilder>

Action to invoke.

Returns

ISqlDatabaseBuilder

builder.

ForSqlite(ISqlForeignKeyBuilder, Action<SqliteForeignKeyBuilder>)

Invokes the provided action only when the builder is an instance of SqliteForeignKeyBuilder type.

public static ISqlForeignKeyBuilder ForSqlite(this ISqlForeignKeyBuilder builder, Action<SqliteForeignKeyBuilder> action)

Parameters

builder ISqlForeignKeyBuilder

Source builder.

action Action<SqliteForeignKeyBuilder>

Action to invoke.

Returns

ISqlForeignKeyBuilder

builder.

ForSqlite(ISqlIndexBuilder, Action<SqliteIndexBuilder>)

Invokes the provided action only when the builder is an instance of SqliteIndexBuilder type.

public static ISqlIndexBuilder ForSqlite(this ISqlIndexBuilder builder, Action<SqliteIndexBuilder> action)

Parameters

builder ISqlIndexBuilder

Source builder.

action Action<SqliteIndexBuilder>

Action to invoke.

Returns

ISqlIndexBuilder

builder.

ForSqlite(ISqlPrimaryKeyBuilder, Action<SqlitePrimaryKeyBuilder>)

Invokes the provided action only when the builder is an instance of SqlitePrimaryKeyBuilder type.

public static ISqlPrimaryKeyBuilder ForSqlite(this ISqlPrimaryKeyBuilder builder, Action<SqlitePrimaryKeyBuilder> action)

Parameters

builder ISqlPrimaryKeyBuilder

Source builder.

action Action<SqlitePrimaryKeyBuilder>

Action to invoke.

Returns

ISqlPrimaryKeyBuilder

builder.

ForSqlite(ISqlSchemaBuilder, Action<SqliteSchemaBuilder>)

Invokes the provided action only when the builder is an instance of SqliteSchemaBuilder type.

public static ISqlSchemaBuilder ForSqlite(this ISqlSchemaBuilder builder, Action<SqliteSchemaBuilder> action)

Parameters

builder ISqlSchemaBuilder

Source builder.

action Action<SqliteSchemaBuilder>

Action to invoke.

Returns

ISqlSchemaBuilder

builder.

ForSqlite(ISqlTableBuilder, Action<SqliteTableBuilder>)

Invokes the provided action only when the builder is an instance of SqliteTableBuilder type.

public static ISqlTableBuilder ForSqlite(this ISqlTableBuilder builder, Action<SqliteTableBuilder> action)

Parameters

builder ISqlTableBuilder

Source builder.

action Action<SqliteTableBuilder>

Action to invoke.

Returns

ISqlTableBuilder

builder.

ForSqlite(ISqlViewBuilder, Action<SqliteViewBuilder>)

Invokes the provided action only when the builder is an instance of SqliteViewBuilder type.

public static ISqlViewBuilder ForSqlite(this ISqlViewBuilder builder, Action<SqliteViewBuilder> action)

Parameters

builder ISqlViewBuilder

Source builder.

action Action<SqliteViewBuilder>

Action to invoke.

Returns

ISqlViewBuilder

builder.

SetDefaultValue<T>(SqliteColumnBuilder, T?)

Changes DefaultValue value of the provided column.

public static SqliteColumnBuilder SetDefaultValue<T>(this SqliteColumnBuilder column, T? value) where T : struct

Parameters

column SqliteColumnBuilder

Source column.

value T?

Value to set.

Returns

SqliteColumnBuilder

column.

Type Parameters

T

Value type.

Exceptions

SqlObjectBuilderException

When default value cannot be changed.

SetDefaultValue<T>(SqliteColumnBuilder, T?)

Changes DefaultValue value of the provided column.

public static SqliteColumnBuilder SetDefaultValue<T>(this SqliteColumnBuilder column, T? value) where T : notnull

Parameters

column SqliteColumnBuilder

Source column.

value T

Value to set.

Returns

SqliteColumnBuilder

column.

Type Parameters

T

Value type.

Exceptions

SqlObjectBuilderException

When default value cannot be changed.

SetFilter(SqliteIndexBuilder, Func<SqlTableBuilderNode, SqlConditionNode?>)

Changes Filter value of the provided index.

public static SqliteIndexBuilder SetFilter(this SqliteIndexBuilder index, Func<SqlTableBuilderNode, SqlConditionNode?> filter)

Parameters

index SqliteIndexBuilder

Source index.

filter Func<SqlTableBuilderNode, SqlConditionNode>

Value to set.

Returns

SqliteIndexBuilder

index.

Exceptions

SqlObjectBuilderException

When filter cannot be changed.

SetPrimaryKey(SqliteConstraintBuilderCollection, params SqlOrderByNode[])

Creates a new unique index builder with a default name and sets a new primary key builder with a default name based on that index.

public static SqlitePrimaryKeyBuilder SetPrimaryKey(this SqliteConstraintBuilderCollection constraints, params SqlOrderByNode[] columns)

Parameters

constraints SqliteConstraintBuilderCollection

Source collection.

columns SqlOrderByNode[]

Collection of columns that define the underlying index.

Returns

SqlitePrimaryKeyBuilder

New SqlPrimaryKeyBuilder instance.

Exceptions

SqlObjectBuilderException

When unique index constraint or primary key constraint could not be created.

SetPrimaryKey(SqliteConstraintBuilderCollection, string, params SqlOrderByNode[])

Creates a new unique index builder with a default name and sets a new primary key builder based on that index.

public static SqlitePrimaryKeyBuilder SetPrimaryKey(this SqliteConstraintBuilderCollection constraints, string name, params SqlOrderByNode[] columns)

Parameters

constraints SqliteConstraintBuilderCollection

Source collection.

name string

Name of the primary key constraint.

columns SqlOrderByNode[]

Collection of columns that define the underlying index.

Returns

SqlitePrimaryKeyBuilder

New SqlPrimaryKeyBuilder instance.

Exceptions

SqlObjectBuilderException

When unique index constraint or primary key constraint could not be created.

SetType(SqliteColumnBuilder, SqliteDataType)

Changes TypeDefinition value of the provided column.

public static SqliteColumnBuilder SetType(this SqliteColumnBuilder column, SqliteDataType dataType)

Parameters

column SqliteColumnBuilder

Source column.

dataType SqliteDataType

SqliteDataType to use for retrieving a default type definition associated with it.

Returns

SqliteColumnBuilder

column.

Remarks

Changing the type will reset the DefaultValue to null.

Exceptions

SqlObjectBuilderException

When type definition cannot be changed.

SetType(SqliteColumnBuilder, Type)

Changes TypeDefinition value of the provided column.

public static SqliteColumnBuilder SetType(this SqliteColumnBuilder column, Type type)

Parameters

column SqliteColumnBuilder

Source column.

type Type

Runtime type to use for retrieving a type definition associated with it.

Returns

SqliteColumnBuilder

column.

Remarks

Changing the type will reset the DefaultValue to null.

Exceptions

SqlObjectBuilderException

When type definition cannot be changed.

SetType<T>(SqliteColumnBuilder)

Changes TypeDefinition value of the provided column.

public static SqliteColumnBuilder SetType<T>(this SqliteColumnBuilder column)

Parameters

column SqliteColumnBuilder

Source column.

Returns

SqliteColumnBuilder

column.

Type Parameters

T

Runtime type to use for retrieving a type definition associated with it.

Remarks

Changing the type will reset the DefaultValue to null.

Exceptions

SqlObjectBuilderException

When type definition cannot be changed.