Oracle
 sql >> डेटाबेस >  >> RDS >> Oracle

QueryChangeDescription से RowId प्राप्त करें

मैंने पाया कि RowId प्राप्त करना था। queryChangeDescription . से आप TabeleChangeDesciptions . प्राप्त कर सकते हैं जिसमें घटना से टेबल चेंज डिक्रिप्शन के साथ कुछ भी सामान्य नहीं है। यदि एक से अधिक तालिका में परिवर्तन हैं, तो ये तालिकाएँ जहाँ Array में सूचीबद्ध हैं। क्योंकि मैं केवल एक तालिका में पंजीकृत हूँ, मुझे सूची में पुनरावृति करने की आवश्यकता नहीं है।

TableChangeDescription . में रहने के बाद आप RowChangeDescription प्राप्त कर सकते हैं प्रत्येक परिवर्तित पंक्ति के लिए। इससे आप RowId प्राप्त कर सकते हैं।

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



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle मर्ज बनाम चुनें फिर डालें या अपडेट करें

  2. एसक्यूएल दो अद्वितीय कॉलम के साथ सबसे हाल की तारीख से पंक्तियों का चयन

  3. ऑरैकल का उपयोग करके अपडेट किए जाने वाले कॉलम की संख्या को कैसे प्रतिबंधित करें?

  4. निम्नलिखित परिणाम प्राप्त करने के लिए दो तालिकाओं में कैसे शामिल हों?

  5. इन्सर्ट स्टेटमेंट में रिकॉर्ड्स की संख्या (ओरेकल)