protected override void ExecuteStatement(ExecutionContext context)
{
//if (!context.User.CanManageSchema())
// throw new MissingPrivilegesException(context.User.Name, new ObjectName(SchemaName), Privileges.Create);
if (context.DirectAccess.SchemaExists(SchemaName))
throw new InvalidOperationException(String.Format("The schema '{0}' already exists in the system.", SchemaName));
context.DirectAccess.CreateSchema(SchemaName, SchemaTypes.User);
// context.DirectAccess.GrantOnSchema(SchemaName, context.User.Name, PrivilegeSets.SchemaAll, true);
}