protected override void ExecuteStatement(ExecutionContext context)
{
var deleteTable = context.Request.Access().GetMutableTable(TableName);
if (deleteTable == null)
throw new ObjectNotFoundException(TableName);
//if (!context.User.CanSelectFrom(QueryPlan))
// throw new MissingPrivilegesException(context.User.Name, TableName, Privileges.Select);
//if (!context.User.CanDeleteFromTable(TableName))
// throw new MissingPrivilegesException(context.User.Name, TableName, Privileges.Delete);
var result = QueryPlan.Evaluate(context.Request);
var count = deleteTable.Delete(result);
context.SetResult(count);
}