Ciri Lanjutan—Operasi Kunci Pangkalan Data


Pangkalan data ialah sumber dikongsi yang digunakan oleh berbilang pengguna Apabila berbilang pengguna mengakses data secara serentak, berbilang transaksi akan mengakses data yang sama dalam pangkalan data Jika operasi serentak tidak dikawal, ia boleh menyebabkan masalah bacaan dan penyimpanan data, memusnahkan konsistensi data pangkalan data Oleh itu, penguncian adalah teknologi yang sangat penting untuk mencapai kawalan konkurensi pangkalan data

Proses penguncian pangkalan data ialah: apabila transaksi memproses data tertentu Sebelum objek dikendalikan. , permintaan dihantar kepada sistem untuk menguncinya. Transaksi yang dikunci mempunyai kawalan tertentu ke atas objek data Sebelum transaksi melepaskan kunci, transaksi lain tidak boleh mengemas kini objek data

Oleh itu, modul JDBC menyepadukan keupayaan kawalan untuk kunci rekod pangkalan data dalam operasi pertanyaan pangkalan data, dipanggil IDBLocker, dan ia adalah sama mudah untuk digunakan dalam bentuk parameter!

Mula-mula faham jenis kunci yang disediakan oleh IDBLocker:

  • MySQL:

    IDBLocker.MYSQL: kunci peringkat baris, hanya data yang layak dikunci, proses lain menunggu sumber dibuka;

  • Oracle:

    IDBLocker.ORACLE: Kunci peringkat baris, hanya data yang layak dikunci, proses lain menunggu sumber dibuka sebelum beroperasi; , Selagi didapati bahawa beberapa data dalam set hasil dikunci, "ORA-00054 error" akan dikembalikan serta-merta; atau mengubah suai data;

    IDBLocker.SQLSERVER_HOLDLOCK: Pegang kunci dan simpan kunci kongsi ini sehingga tamat keseluruhan transaksi tanpa melepaskannya semasa dalam perjalanan

    IDBLocker.SQLSERVER_UPDLOCK: Ubah suai kunci untuk memastikan berbilang proses boleh membaca data; pada masa yang sama tetapi hanya proses ini boleh Mengubah suai data; .SQLSERVER_PAGLOCK: kunci halaman;
  • IDBLocker.SQLSERVER_TABLOCKX: baris Ia adalah kunci meja, yang akan menetapkan kunci eksklusif pada keseluruhan jadual untuk menghalang proses lain daripada membaca atau mengubah suai data dalam jadual
  • pangkalan data lain; :

    boleh dilaksanakan sendiri melalui antara muka IDBLocker; kod dua: Lulus parameter kunci melalui Pilih objek pertanyaan; dengan berhati-hati dan cuba elakkan mengunci meja untuk mengelakkan kebuntuan!