• Start

Languages

/

.NET

/

Concepts

Run SurrealQL queries

SurrealDB supports a number of methods for interacting with the database and performing CRUD operations.

The methods below are used to interact with the database and perform CRUD operations. You can also use the query method to run SurrealQL statements against the database.

Method

Description

db.Query()

Runs a set of SurrealQL statements against the database

db.RawQuery()

Runs a set of SurrealQL statements against the database, based on a raw SurrealQL query

Runs a set of SurrealQL statements against the database.

Method Syntax
await db.Query(sql)

Arguments

Description

sql

Specifies the SurrealQL statements.

cancellationToken

The cancellationToken enables graceful cancellation of asynchronous operations.

// Execute query with params
const string table = "person";
var result = await db.Query($"CREATE person; SELECT * FROM type::table({table});");

// Get the first result from the first query
var created = result.GetValue<Person>(0);

// Get all of the results from the second query
var people = result.GetValue<List<Person>>(1);


Runs a set of SurrealQL statements against the database, based on a raw SurrealQL query.

Method Syntax
await db.RawQuery(sql, params)

Arguments

Description

sql

Specifies the SurrealQL statements.

params

Assigns variables which can be used in the query.

cancellationToken

The cancellationToken enables graceful cancellation of asynchronous operations.

// Assign the variable on the connection
var @params = new Dictionary<string, object> { { "table",
    "person" } };
var result = await db.RawQuery("CREATE person; SELECT * FROM type::table($table);", @params);

// Get the first result from the first query
var created = result.GetValue<Person>(0);

// Get all of the results from the second query
var people = result.GetValue<List<Person>>(1);


Was this page helpful?