Penguatkuasaan Semakan Kunci Utama BOLEH DITANGGUH
Kelakuan kekangan kunci utama atau unik yang BOLEH DITANGGUH bergantung pada spesifikasinya. PostgreSQL mempertimbangkan senario penguatkuasaan berikut:
1. DITANGGUHKAN AWALNYA SEGERA
Kekangan dengan DITANGGUH AWALNYA SEGERA dikuatkuasakan selepas setiap kenyataan, bukan setiap kemas kini baris, seperti yang anda jangkakan. Ini bermakna:
2. DITANGGUHKAN DI AWALNYA
Kekangan dengan DITANGGUH AWALNYA DITANGGUH dikuatkuasakan pada penghujung urus niaga, membenarkan berbilang kemas kini dalam transaksi yang sama. Ini berguna untuk menguatkuasakan kekangan merentas berbilang kenyataan.
3. Kekangan Tidak Boleh Ditangguh
Kekangan yang diisytiharkan sebagai TIDAK DITANGGUH disemak selepas setiap kemas kini baris, menjadikannya lebih ketat. Ini boleh membawa kepada pelanggaran kekangan walaupun kekangan akan dipenuhi pada penghujung arahan.
Perspektif Sejarah
Dalam versi PostgreSQL yang terdahulu, kekangan tidak boleh ditunda juga telah disemak selepas setiap kemas kini baris. Tingkah laku ini dianggap sebagai pepijat dan kemudiannya diperbetulkan dalam PostgreSQL 9.1.
Implikasi Praktikal
Atas ialah kandungan terperinci Bagaimanakah Penguatkuasaan Pemeriksaan Kunci Utama PostgreSQL Berfungsi?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!