Oracle (notifica di query continua) - modo per ottenere più dati in una notifica CQN?

StackOverflow https://stackoverflow.com/questions/4966628

  •  12-11-2019
  •  | 
  •  

Domanda

Stiamo usando Oracle CQN per le notifiche di cambiamento per query specifiche.

Funziona bene per tutti gli inserti e gli aggiornamenti. Il problema è eliminare, su Elimina la notifica viene inviata con RowID tra gli altri dettagli. Non possiamo più usare il rowid per cercare la riga perché è stata eliminata.

C'è un modo per ottenere più dati in una notifica CQN riguardo alla riga cancellata?

È stato utile?

Soluzione

Temo di no.

La mia comprensione è che questo servizio è su misura per consentire ai server o ai clienti di implementare le cache. Nel qual caso si suppone che la tabella o la vista memorizzata compreso il rowid, In seguito a una notifica, il gestore della cache che si è iscritto al servizio CQN dovrebbe invalidare le righe interessate dall'elenco RowID (o recuperarlo di nuovo in Avanzato).

Esempio di vita reale. Questo può essere utile per database in tempo reale come Intelligent Network (cioè per gestire i bscrittori prepagati su una rete di telecomunicazioni) in cui i chiamanti devono essere sottoposti a ASAP. La macchina incaricata di autorizzare le chiamate (lo SCP, ce ne sono molti su tutto il territorio) è di solito un database in memoria e il vero DB persistente vive su un altro nodo (l'SDP in un datacenter centrale). L'SDP con il suo DB in dischi riceve eventi del ciclo di vita e l'equilibrio riempi e notifica gli SCP di abbonamento.

Potresti avere un modello di utilizzo diverso.

Altri suggerimenti

Anch'io avevo questo problema, invece di eliminare una riga, ho usato una colonna "attiva", invece di eliminare una riga ho cambiato "attivo" da "sì" a "no".

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top