tursodatabase/turso · error · NotSupportedException
Direct remote Turso connections do not support the client-si
Error message
Direct remote Turso connections do not support the client-side SQLite helper '{unsupportedToken}'. Use SQL supported by the remote database or use a local database. What it means
Error "Direct remote Turso connections do not support the client-side SQLite helper '{unsupportedToken}'. Use SQL supported by the remote database or use a local database." thrown in tursodatabase/turso.
Source
Thrown at bindings/dotnet/src/Turso.EntityFrameworkCore.Sqlite/Storage/Internal/TursoSqliteRelationalConnection.cs:226
public override ValueTask<InterceptionResult<DbDataReader>> ReaderExecutingAsync(
DbCommand command,
CommandEventData eventData,
InterceptionResult<DbDataReader> result,
CancellationToken cancellationToken = default)
{
Validate(command);
return ValueTask.FromResult(result);
}
private static void Validate(DbCommand command)
{
if (command.Connection is not TursoSqliteConnection { IsDirectRemote: true })
return;
var unsupportedToken = FindUnsupportedToken(command.CommandText);
if (unsupportedToken is not null)
{
throw new NotSupportedException(
$"Direct remote Turso connections do not support the client-side SQLite helper '{unsupportedToken}'. "
+ "Use SQL supported by the remote database or use a local database.");
}
}
private static string? FindUnsupportedToken(string sql)
{
string? previousIdentifier = null;
for (var index = 0; index < sql.Length;)
{
if (TrySkipTriviaOrString(sql, ref index))
continue;
if (!IsIdentifierStart(sql[index]))
{
index++;
continue;
}View on GitHub (pinned to 492c4a71cd)
Solutions
- Rewrite the command to use SQL supported by the remote Turso database instead of the client-side SQLite helper (PRAGMA/VACUUM-style token)
- Remove the unsupported statement from migrations/startup code when targeting a direct remote connection
- Use a local database file if the SQLite helper behavior is genuinely needed
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at bindings/dotnet/src/Turso.EntityFrameworkCore.Sqlite/Storage/Internal/TursoSqliteRelationalConnection.cs:226 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of tursodatabase/turso@492c4a71cd (2026-09-13).
Data as JSON: /api/errors/bf0a561f5aad65fc.
Report an issue: GitHub.