sql >> Database >  >> RDS >> Oracle

Oracle AQ uitstelorder

Ik geloof dat de standaardvolgorde uit de wachtrij is:first in first out, daarom worden ze uit de wachtrij gehaald in dezelfde volgorde als waarin ze in de wachtrij zijn geplaatst.

Voor je tweede punt, zeg je dat je dequeue wilt serialiseren op de niet-unieke-id? Dat wil zeggen, u heeft in feite veel wachtrijen in uw wachtrij en u wilt dat slechts één taak tegelijkertijd berichten uit elke wachtrij verbruikt?

Dat wil zeggen, je hebt berichten:

1 | a
2 | a
3 | b
4 | a

Hier heb je twee soorten records (a en b) en je wilt dat 1 taak alle a's verbruikt en een andere alle b's. Als dat het geval is, overweeg dan misschien om meerdere wachtrijen te maken?

Als er geen meerdere wachtrijen zijn, kijk dan eens naar het type dequeue_options_t dat u doorgeeft aan de dequeue-procedure - met name dequeue_condition - hiermee kunt u alleen specifieke berichten selecteren, zodat u een taak kunt starten voor alle a's en een andere voor alle b's enz.




  1. Geavanceerd nieuwsarchief Jaren/Maand met PHP MySql

  2. Is het mogelijk om een ​​hele resultaatset in mysql te hashen?

  3. Benoemde instanties gebruiken? Test uw DAC-verbinding!

  4. Tabel exporteren van database naar csv-bestand