Eliminar datos de grupo en caché con consulta SQL
Similar a la búsqueda con SQL, NCache proporciona consultas de objetos a través de las cuales se utilizan criterios dados en una consulta para eliminar conjuntos de resultados. Para eliminar los datos en el caché de acuerdo con sus criterios especificados, NCache le proporciona una extensión de consulta SQL.
Una palabra clave especial $Group$
se utiliza para especificar que la condición considerada utiliza el grupo. Se ejecuta una consulta SQL con los criterios de búsqueda utilizando ExecuteNonQuery
.
ExecuteNonQuery
procesa la consulta en el lado del servidor y luego envía el resultado al cliente en forma tabular al ICacheReader
tipo de instancia.
Requisitos previos para eliminar datos de grupo en caché mediante consulta SQL
Antes de utilizar la función Eliminar datos de grupo en caché mediante consulta SQL, asegúrese de que se cumplan los siguientes requisitos:
- Para obtener información sobre los requisitos previos estándar necesarios para trabajar con todos NCache características del lado del cliente, consulte la página proporcionada en Requisitos previos de la API del lado del cliente.
- Clases personalizadas/atributos de búsqueda debe indexarse como se explica en Configuración de índices de consulta.
- Para obtener detalles de la API, consulte: Dolor, Lector de ICache, ConsultaComando, ExecuteNonQueryExecuteNonQuery, Servicio de búsqueda.
Eliminar grupo
Dados ciertos criterios, puede eliminar grupos presentes en el caché con consultas SQL. El siguiente ejemplo elimina todos los datos de un determinado grupo mediante la consulta de eliminación SQL.
// Preconditions: Cache is already connected
// A user wants to remove the West Coast Customers Group as this region is no longer supported in their store
// Custom class is query indexed through the NCache Management Center or config.ncconf
// Create SQL Query with the specified criteria
// Make sure to use the Fully Qualified Name (FQN)
string query = "DELETE FROM Alachisoft.NCache.Samples.Data.Customer WHERE $Group$ = ?";
// Use QueryCommand for query execution
var queryCommand = new QueryCommand(query);
// Providing parameters for query
queryCommand.Parameters.Add("$Group$", "West Coast Customers");
// 'rowsAffected' number of items removed from cache
int rowsAffected = cache.SearchService.ExecuteNonQuery(queryCommand);
if (rowsAffected==0)
Console.WriteLine($"No West Coast Customers removed");
Note
Para garantizar que la operación sea a prueba de fallas, se recomienda manejar cualquier posible excepción dentro de su aplicación, como se explica en Manejo de fallas.
Para obtener más detalles sobre las consultas de objetos, consulte el Referencia de SQL para NCache .
Recursos adicionales
NCache proporciona una aplicación de muestra para grupos en GitHub.
Vea también
.NETO: Alachisoft.NCache.Cliente espacio de nombres
Java: com.alachisoft.ncache.cliente espacio de nombres
Nodo.js: cache clase.
Pitón: ncache.cliente clase.