Table of Contents

Struct MySqlNodeInterpreterOptions

Namespace
LfrlAnvil.MySql
Assembly
LfrlAnvil.MySql.dll

Represents available options for MySqlNodeInterpreter.

public readonly struct MySqlNodeInterpreterOptions
Inherited Members

Fields

Default

Represents default options.

public static readonly MySqlNodeInterpreterOptions Default

Field Value

MySqlNodeInterpreterOptions

Properties

AreTemporaryViewsForbidden

Specifies whether or not an exception should be thrown when a temporary view node is visited.

public bool AreTemporaryViewsForbidden { get; }

Property Value

bool

CommonSchemaName

Name of the common schema.

public string? CommonSchemaName { get; }

Property Value

string

Remarks

This schema will contain common functions and procedures.

IndexPrefixLength

Specifies an index prefix length.

public int? IndexPrefixLength { get; }

Property Value

int?

Remarks

Default sets this value to 500.

IsFullJoinParsingEnabled

Specifies whether or not FULL JOIN should be included in SQL statements.

public bool IsFullJoinParsingEnabled { get; }

Property Value

bool

IsIndexFilterParsingEnabled

Specifies whether or not index filters should be included in SQL statements.

public bool IsIndexFilterParsingEnabled { get; }

Property Value

bool

TypeDefinitions

public MySqlColumnTypeDefinitionProvider? TypeDefinitions { get; }

Property Value

MySqlColumnTypeDefinitionProvider

Remarks

Default MySqlColumnTypeDefinitionProvider instance built by MySqlColumnTypeDefinitionProviderBuilder will be used when this is null.

UpsertSourceAlias

Specifies a custom alias of a value source of UPSERT statements.

public string? UpsertSourceAlias { get; }

Property Value

string

Remarks

Equal to "new" when not specified.

Methods

DisableIndexPrefixes()

Creates a new MySqlNodeInterpreterOptions instance with IndexPrefixLength set to null.

[Pure]
public MySqlNodeInterpreterOptions DisableIndexPrefixes()

Returns

MySqlNodeInterpreterOptions

New MySqlNodeInterpreterOptions instance.

EnableFullJoinParsing(bool)

Creates a new MySqlNodeInterpreterOptions instance with changed IsFullJoinParsingEnabled.

[Pure]
public MySqlNodeInterpreterOptions EnableFullJoinParsing(bool enabled = true)

Parameters

enabled bool

Value to set. Equal to true by default.

Returns

MySqlNodeInterpreterOptions

New MySqlNodeInterpreterOptions instance.

EnableIndexFilterParsing(bool)

Creates a new MySqlNodeInterpreterOptions instance with changed IsIndexFilterParsingEnabled.

[Pure]
public MySqlNodeInterpreterOptions EnableIndexFilterParsing(bool enabled = true)

Parameters

enabled bool

Value to set. Equal to true by default.

Returns

MySqlNodeInterpreterOptions

New MySqlNodeInterpreterOptions instance.

EnableIndexPrefixes(int)

Creates a new MySqlNodeInterpreterOptions instance with changed IndexPrefixLength.

[Pure]
public MySqlNodeInterpreterOptions EnableIndexPrefixes(int length)

Parameters

length int

Value to set.

Returns

MySqlNodeInterpreterOptions

New MySqlNodeInterpreterOptions instance.

ForbidTemporaryViews(bool)

Creates a new MySqlNodeInterpreterOptions instance with changed AreTemporaryViewsForbidden.

[Pure]
public MySqlNodeInterpreterOptions ForbidTemporaryViews(bool enabled = true)

Parameters

enabled bool

Value to set. Equal to true by default.

Returns

MySqlNodeInterpreterOptions

New MySqlNodeInterpreterOptions instance.

SetCommonSchemaName(string?)

Creates a new MySqlNodeInterpreterOptions instance with changed CommonSchemaName.

[Pure]
public MySqlNodeInterpreterOptions SetCommonSchemaName(string? name)

Parameters

name string

Value to set.

Returns

MySqlNodeInterpreterOptions

New MySqlNodeInterpreterOptions instance.

SetTypeDefinitions(MySqlColumnTypeDefinitionProvider?)

Creates a new MySqlNodeInterpreterOptions instance with changed TypeDefinitions.

[Pure]
public MySqlNodeInterpreterOptions SetTypeDefinitions(MySqlColumnTypeDefinitionProvider? typeDefinitions)

Parameters

typeDefinitions MySqlColumnTypeDefinitionProvider

Value to set.

Returns

MySqlNodeInterpreterOptions

New MySqlNodeInterpreterOptions instance.

SetUpdateSourceAlias(string?)

Creates a new MySqlNodeInterpreterOptions instance with changed UpsertSourceAlias.

[Pure]
public MySqlNodeInterpreterOptions SetUpdateSourceAlias(string? alias)

Parameters

alias string

Value to set.

Returns

MySqlNodeInterpreterOptions

New MySqlNodeInterpreterOptions instance.