Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Bagaimana saya bisa menggunakan FOR UPDATE dengan JOIN di Oracle?

coba:

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

EDIT :itu mungkin tampak sedikit kontra-intuitif mengingat pertanyaan yang Anda tautkan (yang menanyakan cara membuang IN ), tetapi masih dapat memberikan manfaat jika bergabung Anda mengembalikan satu set terbatas. Namun, tidak ada solusi:pengecualian Oracle cukup jelas; Oracle tidak tahu baris mana yang harus dikunci karena DISTINCT . Anda dapat mengabaikan DISTINCT atau tentukan semuanya dalam tampilan dan kemudian perbarui itu, jika Anda mau, tanpa kunci eksplisit: 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. Bagaimana cara menggunakan Timestamp_to_scn dan Scn_to_timestamp di Oracle?

  2. Mengisi Item Pohon Dengan Grup Rekaman Dalam Formulir Oracle

  3. Bagaimana menangani transaksi besar di bawah Oracle?

  4. Bagaimana cara menghapus / menghapus sepenuhnya Oracle 11g (klien)?

  5. Permintaan Pembaruan Oracle menggunakan Gabung