Run SurrealQL queries
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 |
.Query()
Runs a set of SurrealQL statements against the database.
Method Syntax
await db.Query(sql)
Arguments
| Arguments | Description |
|---|
sql required | Specifies the SurrealQL statements. |
cancellationToken optional | The cancellationToken enables graceful cancellation of asynchronous operations. |
Example usage
const string table = "person";
var result = await db.Query($"CREATE person; SELECT * FROM type::table({table});");
var created = result.GetValue<Person>(0);
var people = result.GetValue<List<Person>>(1);
.RawQuery()
Runs a set of SurrealQL statements against the database, based on a raw SurrealQL query.
Method Syntax
await db.RawQuery(sql, params)
Arguments
| Arguments | Description |
|---|
sql required | Specifies the SurrealQL statements. |
params optional | Assigns variables which can be used in the query. |
cancellationToken optional | The cancellationToken enables graceful cancellation of asynchronous operations. |
Example usage
var @params = new Dictionary<string, object> { { "table", "person" } };
var result = await db.RawQuery("CREATE person; SELECT * FROM type::table($table);", @params);
var created = result.GetValue<Person>(0);
var people = result.GetValue<List<Person>>(1);