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

मैं Oracle पर जॉइन के साथ FOR UPDATE का उपयोग कैसे कर सकता हूं?

कोशिश करें:

select ..... 
from <choose your table>
where id in (<your join query here>) for UPDATE;

संपादित करें :यह आपके द्वारा लिंक किए गए प्रश्न को ध्यान में रखते हुए थोड़ा प्रति-सहज ज्ञान युक्त लग सकता है (जिसमें पूछा गया था कि IN से कैसे छुटकारा पाया जाए) ), लेकिन फिर भी लाभ प्रदान कर सकता है यदि आपका शामिल होना प्रतिबंधित सेट लौटाता है। हालांकि, कोई समाधान नहीं है:ऑरैकल अपवाद काफी आत्म-व्याख्यात्मक है; oracle को पता नहीं है कि DISTINCT . के कारण किन पंक्तियों को लॉक करना है . आप DISTINCT . को छोड़ सकते हैं या सब कुछ एक दृश्य में परिभाषित करें और फिर उसे अपडेट करें, यदि आप चाहते हैं, तो स्पष्ट लॉक के बिना: http://www.dba-oracle.com/t_ora_02014_cannot_select_for_update.htm



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. पीएल/एसक्यूएल में एक चर के प्रकार को कैसे देखें?

  2. पीएल/एसक्यूएल डेवलपर में एम्पर्सेंड से बचें

  3. क्या इंडेक्स के लिए अलग-अलग टेबलस्पेस होने का कोई तार्किक कारण है?

  4. Oracle PL/SQL को Java क्लासेस/EJB में माइग्रेट करने पर एक विकल्प बनाना

  5. PHP के लिए OCI_DEFAULT का उपयोग करके Oracle के oci_execute () का व्यवहार> 5.3.2