sql >> Database teknologi >  >> RDS >> Oracle

Hent RowId fra QueryChangeDescription

Jeg fandt ud af, at det var at få RowId. Fra queryChangeDescription du kan få TabeleChangeDesciptions som ikke har noget til fælles med TableChangeDecription fra begivenheden. Hvis der er ændringer på mere end én tabel, er disse tabeller opført i arrayet. Fordi jeg kun er registreret i én tabel, behøver jeg ikke at iterere over listen.

Efter at have brugt TableChangeDescription du kan få RowChangeDescription for hver ændret række. Herfra kan du få RowId.

for (QueryChangeDescription queryChangeDescription : databaseChangeEvent.getQueryChangeDescription()) {
  RowChangeDescription[] rowChangeDescriptions = queryChangeDescription.getTableChangeDescription()[0].getRowChangeDescription();
  for (RowChangeDescription rowChangeDescription : rowChangeDescriptions) {
    handleEvent(rowChangeDescription.getRowid());
  }
}



  1. Definition af sammensat nøgle med automatisk stigning i MySQL

  2. Ekskluder værdien af ​​en post i en gruppe, hvis en anden er til stede v2

  3. Sådan opsætter du MySQL i IBM Worklight

  4. Hvordan tilføjer jeg en attribut til xml indeholdt i en CLOB i en Oracle-database?