Table of Contents

Class SQLWriter

Namespace
The.SQLServer.Persistence
Assembly
Instagile.SQLServer.dll
public sealed class SQLWriter : WriterBase, IVisitor, IDisposable
Inheritance
SQLWriter
Implements
Inherited Members

Constructors

SQLWriter(IDatabase, Dictionary<string, EntityTable>, Dictionary<string, AutonumColumn>, bool, DumpExecutionPlan?, TimeSpan, int, Identity, CancellationToken)

public SQLWriter(IDatabase db, Dictionary<string, EntityTable> persisters, Dictionary<string, AutonumColumn> autonums, bool prefixed, DumpExecutionPlan? measure, TimeSpan versionConflictLeeway, int maximumBatchedQueryCount, Identity writeIdentity, CancellationToken cancellationToken)

Parameters

db IDatabase
persisters Dictionary<string, EntityTable>
autonums Dictionary<string, AutonumColumn>
prefixed bool
measure DumpExecutionPlan
versionConflictLeeway TimeSpan
maximumBatchedQueryCount int
writeIdentity Identity
cancellationToken CancellationToken

Properties

MaxParamsPerStatement

RDBMS-specific max placeholder count.

protected override int MaxParamsPerStatement { get; }

Property Value

int

MaxRowsPerInsert

RDBMS-specific max VALUES element count.

protected override int MaxRowsPerInsert { get; }

Property Value

int

Methods

CreateDML(IReadOnlyDictionary<string, EntityTable>, QueryConfig)

protected override IDMLDialect CreateDML(IReadOnlyDictionary<string, EntityTable> tables, QueryConfig config)

Parameters

tables IReadOnlyDictionary<string, EntityTable>
config QueryConfig

Returns

IDMLDialect

CreateParameter(int, Guid)

protected override DbParameter CreateParameter(int number, Guid value)

Parameters

number int
value Guid

Returns

DbParameter

CreateParameter(int, int, object)

protected override DbParameter CreateParameter(int number, int dbType, object value)

Parameters

number int
dbType int
value object

Returns

DbParameter

CreateParameter(int, string)

protected override DbParameter CreateParameter(int number, string value)

Parameters

number int
value string

Returns

DbParameter

CreateParameter(int, ulong)

protected override DbParameter CreateParameter(int number, ulong value)

Parameters

number int
value ulong

Returns

DbParameter

ExecuteAsync(List<List<BatchedCommand>>)

protected override Task ExecuteAsync(List<List<BatchedCommand>> _Batches)

Parameters

_Batches List<List<BatchedCommand>>

Returns

Task

GetParameterValue(AttributeColumn, object?)

protected override object GetParameterValue(AttributeColumn c, object? raw)

Parameters

c AttributeColumn
raw object

Returns

object

InsertCollections(string, string, IReadOnlyList<InsertRelationship>)

public void InsertCollections(string typeName, string relationshipName, IReadOnlyList<InsertRelationship> fusibleOperations)

Parameters

typeName string
relationshipName string
fusibleOperations IReadOnlyList<InsertRelationship>

InsertEntities(string, IReadOnlyList<ColumnsByIndex>)

public void InsertEntities(string typeName, IReadOnlyList<ColumnsByIndex> fusedOperations)

Parameters

typeName string
fusedOperations IReadOnlyList<ColumnsByIndex>

InsertReferences(string, string, IReadOnlyList<InsertRelationship>)

public void InsertReferences(string typeName, string relationshipName, IReadOnlyList<InsertRelationship> fusibleOperations)

Parameters

typeName string
relationshipName string
fusibleOperations IReadOnlyList<InsertRelationship>

Visit(DeleteEntity)

public override void Visit(DeleteEntity operation)

Parameters

operation DeleteEntity

Visit(DeleteRelationship)

public override void Visit(DeleteRelationship operation)

Parameters

operation DeleteRelationship

Visit(InsertEntity)

public override void Visit(InsertEntity operation)

Parameters

operation InsertEntity

Visit(InsertRelationship)

public override void Visit(InsertRelationship operation)

Parameters

operation InsertRelationship

Visit(UpdateEntity)

public override void Visit(UpdateEntity operation)

Parameters

operation UpdateEntity