Table of Contents

Interface ISql

Namespace
Apache.Ignite.Sql
Assembly
Apache.Ignite.dll

Ignite SQL query facade.

public interface ISql

Methods

ExecuteAsync(ITransaction?, SqlStatement, params object?[]?)

Executes a single SQL statement and returns rows as tuples (IIgniteTuple).

Task<IResultSet<IIgniteTuple>> ExecuteAsync(ITransaction? transaction, SqlStatement statement, params object?[]? args)

Parameters

transaction ITransaction

Optional transaction.

statement SqlStatement

Statement to execute.

args object[]

Arguments for the statement.

Returns

Task<IResultSet<IIgniteTuple>>

SQL result set.

ExecuteAsync(ITransaction?, SqlStatement, CancellationToken, params object?[]?)

Executes a single SQL statement and returns rows as tuples (IIgniteTuple).

Task<IResultSet<IIgniteTuple>> ExecuteAsync(ITransaction? transaction, SqlStatement statement, CancellationToken cancellationToken, params object?[]? args)

Parameters

transaction ITransaction

Optional transaction.

statement SqlStatement

Statement to execute.

cancellationToken CancellationToken

Cancellation token.

args object[]

Arguments for the statement.

Returns

Task<IResultSet<IIgniteTuple>>

SQL result set.

ExecuteAsync<T>(ITransaction?, SqlStatement, params object?[]?)

Executes a single SQL statement and returns rows deserialized into the specified user type T.

Task<IResultSet<T>> ExecuteAsync<T>(ITransaction? transaction, SqlStatement statement, params object?[]? args)

Parameters

transaction ITransaction

Optional transaction.

statement SqlStatement

Statement to execute.

args object[]

Arguments for the statement.

Returns

Task<IResultSet<T>>

SQL result set.

Type Parameters

T

Row type.

ExecuteAsync<T>(ITransaction?, SqlStatement, CancellationToken, params object?[]?)

Executes a single SQL statement and returns rows deserialized into the specified user type T.

Task<IResultSet<T>> ExecuteAsync<T>(ITransaction? transaction, SqlStatement statement, CancellationToken cancellationToken, params object?[]? args)

Parameters

transaction ITransaction

Optional transaction.

statement SqlStatement

Statement to execute.

cancellationToken CancellationToken

Cancellation token.

args object[]

Arguments for the statement.

Returns

Task<IResultSet<T>>

SQL result set.

Type Parameters

T

Row type.

ExecuteBatchAsync(ITransaction?, SqlStatement, IEnumerable<IEnumerable<object?>>, CancellationToken)

Executes an SQL statement for every set of arguments and returns the number of affected rows for each statement execution.

Only DML statements (INSERT, UPDATE, DELETE) are supported.

long[] res = await sql.ExecuteBatchAsync(
                    transaction: null,
                    "INSERT INTO Person (Id, Name) VALUES (?, ?)",
                    [[1, "Alice"], [2, "Bob"], [3, "Charlie"]]);
Task<long[]> ExecuteBatchAsync(ITransaction? transaction, SqlStatement statement, IEnumerable<IEnumerable<object?>> args, CancellationToken cancellationToken = default)

Parameters

transaction ITransaction

Transaction.

statement SqlStatement

Statement to execute once for every entry in args.

args IEnumerable<IEnumerable<object>>

Batched arguments. The specified statement will be executed once for each entry in this collection. Cannot be empty or contain empty rows.

cancellationToken CancellationToken

Cancellation token.

Returns

Task<long[]>

The number of affected rows for each set of arguments. The size of the returned array will match the size of args.

ExecuteReaderAsync(ITransaction?, SqlStatement, params object?[]?)

Executes a single SQL statement and returns a DbDataReader to consume them in an efficient, forward-only way.

Task<IgniteDbDataReader> ExecuteReaderAsync(ITransaction? transaction, SqlStatement statement, params object?[]? args)

Parameters

transaction ITransaction

Optional transaction.

statement SqlStatement

Statement to execute.

args object[]

Arguments for the statement.

Returns

Task<IgniteDbDataReader>

Data reader.

ExecuteReaderAsync(ITransaction?, SqlStatement, CancellationToken, params object?[]?)

Executes a single SQL statement and returns a DbDataReader to consume them in an efficient, forward-only way.

Task<IgniteDbDataReader> ExecuteReaderAsync(ITransaction? transaction, SqlStatement statement, CancellationToken cancellationToken, params object?[]? args)

Parameters

transaction ITransaction

Optional transaction.

statement SqlStatement

Statement to execute.

cancellationToken CancellationToken

Cancellation token.

args object[]

Arguments for the statement.

Returns

Task<IgniteDbDataReader>

Data reader.

ExecuteScriptAsync(SqlStatement, params object?[]?)

Executes a multi-statement SQL query.

Task ExecuteScriptAsync(SqlStatement script, params object?[]? args)

Parameters

script SqlStatement

Script.

args object[]

Arguments.

Returns

Task

A Task representing the asynchronous operation.

ExecuteScriptAsync(SqlStatement, CancellationToken, params object?[]?)

Executes a multi-statement SQL query.

Task ExecuteScriptAsync(SqlStatement script, CancellationToken cancellationToken, params object?[]? args)

Parameters

script SqlStatement

Script.

cancellationToken CancellationToken

Cancellation token.

args object[]

Arguments.

Returns

Task

A Task representing the asynchronous operation.