sql >> Database >  >> RDS >> Oracle

Haal RowId op uit QueryChangeDescription

Ik vond het was om de RowId te krijgen. Van de queryChangeDescription je kunt de TabeleChangeDesciptions . krijgen die niets gemeen heeft met de TableChangeDecription van de gebeurtenis. Als er wijzigingen zijn in meer dan één tabel, werden deze tabellen vermeld in de array. Omdat ik bij slechts één tabel ben geregistreerd, hoef ik de lijst niet te herhalen.

Nadat u de TableChangeDescription je kunt de RowChangeDescription . krijgen voor elke gewijzigde rij. Hieruit kun je de RowId krijgen.

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



  1. Mysql-poort al in gebruik

  2. Een lijst met database-e-mailprofielen retourneren in SQL Server (T-SQL)

  3. Hoe Atand() werkt in PostgreSQL

  4. Variabelen gebruiken in een Oracle PL/SQL waarbij clausule