Table of Contents

Class ClickHouseDataProvider

Namespace
LinqToDB.DataProvider.ClickHouse
Assembly
linq2db.dll
public abstract class ClickHouseDataProvider : DynamicDataProviderBase<ClickHouseProviderAdapter>, IDataProvider
Inheritance
ClickHouseDataProvider
Implements
Inherited Members
Extension Methods

Constructors

ClickHouseDataProvider(string, ClickHouseProvider)

protected ClickHouseDataProvider(string name, ClickHouseProvider provider)

Parameters

name string
provider ClickHouseProvider

Properties

Provider

public ClickHouseProvider Provider { get; }

Property Value

ClickHouseProvider

SupportedTableOptions

public override TableOptions SupportedTableOptions { get; }

Property Value

TableOptions

Methods

BulkCopyAsync<T>(DataOptions, ITable<T>, IEnumerable<T>, CancellationToken)

public override Task<BulkCopyRowsCopied> BulkCopyAsync<T>(DataOptions options, ITable<T> table, IEnumerable<T> source, CancellationToken cancellationToken) where T : notnull

Parameters

options DataOptions
table ITable<T>
source IEnumerable<T>
cancellationToken CancellationToken

Returns

Task<BulkCopyRowsCopied>

Type Parameters

T

BulkCopy<T>(DataOptions, ITable<T>, IEnumerable<T>)

public override BulkCopyRowsCopied BulkCopy<T>(DataOptions options, ITable<T> table, IEnumerable<T> source) where T : notnull

Parameters

options DataOptions
table ITable<T>
source IEnumerable<T>

Returns

BulkCopyRowsCopied

Type Parameters

T

CreateConnectionInternal(string)

protected override DbConnection CreateConnectionInternal(string connectionString)

Parameters

connectionString string

Returns

DbConnection

CreateSqlBuilder(MappingSchema, DataOptions)

public override ISqlBuilder CreateSqlBuilder(MappingSchema mappingSchema, DataOptions dataOptions)

Parameters

mappingSchema MappingSchema
dataOptions DataOptions

Returns

ISqlBuilder

GetQueryParameterNormalizer()

Returns instance of IQueryParametersNormalizer, which implements normalization logic for parameters of single query. E.g. it could include:

  • trimming names that are too long
  • removing/replacing unsupported characters
  • name deduplication for parameters with same name
. For implementation without state it is recommended to return static instance. E.g. this could be done for providers with positional parameters that ignore names.
public override IQueryParametersNormalizer GetQueryParameterNormalizer()

Returns

IQueryParametersNormalizer

GetSchemaProvider()

public override ISchemaProvider GetSchemaProvider()

Returns

ISchemaProvider

GetSqlOptimizer(DataOptions)

public override ISqlOptimizer GetSqlOptimizer(DataOptions dataOptions)

Parameters

dataOptions DataOptions

Returns

ISqlOptimizer

IsDBNullAllowed(DataOptions, DbDataReader, int)

public override bool? IsDBNullAllowed(DataOptions options, DbDataReader reader, int idx)

Parameters

options DataOptions
reader DbDataReader
idx int

Returns

bool?

SetParameter(DataConnection, DbParameter, string, DbDataType, object?)

public override void SetParameter(DataConnection dataConnection, DbParameter parameter, string name, DbDataType dataType, object? value)

Parameters

dataConnection DataConnection
parameter DbParameter
name string
dataType DbDataType
value object