Elimina i dati del gruppo nella cache con la query SQL
Simile alla ricerca con SQL, NCache fornisce query di oggetti attraverso le quali utilizzare i criteri forniti in una query per eliminare i set di risultati. Per eliminare i dati nella cache in base ai criteri specificati, NCache fornisce un'estensione della query SQL.
Una parola chiave speciale $Group$
viene utilizzato per specificare che la condizione in esame utilizza il gruppo. Viene eseguita una query SQL con i criteri di ricerca utilizzando ExecuteNonQuery
.
ExecuteNonQuery
elabora la query sul lato server e quindi invia il risultato al client in forma tabellare al ICacheReader
tipo di istanza.
Prerequisiti per eliminare i dati del gruppo nella cache utilizzando la query SQL
Prima di utilizzare la funzionalità Elimina dati del gruppo nella cache utilizzando la query SQL, assicurarsi che siano soddisfatti i seguenti requisiti:
- Per conoscere i prerequisiti standard richiesti per lavorare con all NCache Per le funzionalità lato client fare riferimento alla pagina specificata Prerequisiti dell'API lato client.
- Classi personalizzate/attributi ricercabili devono obbligatoriamente: essere indicizzato come spiegato in Configurazione degli indici di query.
- Per i dettagli dell'API fare riferimento a: ICache, ICacheReader, QueryCommand, EseguiNonQuery, Servizio di ricerca.
Elimina gruppo
Dati determinati criteri, è possibile rimuovere i gruppi presenti nella cache con query SQL. L'esempio seguente rimuove tutti i dati da un determinato gruppo tramite la query di eliminazione 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:
Per garantire che l'operazione sia a prova di errore, si consiglia di gestire eventuali potenziali eccezioni all'interno dell'applicazione, come spiegato in Gestione dei guasti.
Per ottenere maggiori dettagli sulle query sugli oggetti, fare riferimento a Riferimento SQL per NCache .
Risorse addizionali
NCache fornisce un'applicazione di esempio per Gruppi su GitHub.
Vedere anche
.NETTO: Alachisoft.NCache.Cliente spazio dei nomi.
Giava: com.alachisoft.ncache.cliente spazio dei nomi.
Node.js: Cache classe.
Pitone: ncache.cliente classe.