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

नेस्टेड लेन-देन उपयोग के मामले में बाहरी लेन-देन डेटाबेस (जेपीए, माईएसक्यूएल, स्प्रिंग फ्रेमवर्क, और हाइबरनेट) में जारी अद्यतन नहीं देख रहा है

मुझे नहीं पता कि हाइबरनेट में लेनदेन "घोंसला" कैसे किया जाता है (जैसा कि मुझे विश्वास नहीं है कि MySQL वास्तव में लेनदेन घोंसला कर सकता है)।

इसलिए मैं मान लूंगा कि दूसरा (नेस्टेड) ​​लेन-देन (?) डेटाबेस से एक नया कनेक्शन होना चाहिए - अन्यथा "बाहरी" लेनदेन को प्रभावित किए बिना "नेस्टेड" लेनदेन को रोलबैक करना संभव नहीं होगा।

यदि वास्तव में ऐसा है, तो आप शायद MySQL के डिफ़ॉल्ट अलगाव स्तर से प्रभावित हैं जो कि REPEATABLE READ है जो बाहरी लेन-देन को बाद . किए गए किसी भी डेटा को देखने नहीं देगा कि लेनदेन शुरू हो गया।

इस सिद्धांत का परीक्षण करने के लिए, अलगाव स्तर (बाहरी लेन-देन के) को READ COMMITTED में बदलने का प्रयास करें और देखें कि क्या इससे समस्या हल हो जाती है।



  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, MSSQL, MySQL, PostgreSQL के बीच बुनियादी प्रशासन तुलना

  2. स्ट्रिंग को तिथि php . में बदलें

  3. स्कैला स्लिक:MTable.getTables खाली वेक्टर/सूची लौटाएं

  4. MySQL में इंटरसेक्ट करने का विकल्प

  5. Php . में एक चर के लिए एकाधिक कॉलम कैसे पास करें