Transaksi Pelayan SQL dan Pengendalian Ralat
Apabila menggunakan transaksi dalam SQL Server, adalah penting untuk memahami tingkah laku apabila ralat ditemui.
Dalam contoh, transaksi SQL Server yang mengandungi berbilang pernyataan INSERT dilaksanakan sebagai satu perintah rentetan panjang. Jika mana-mana penyata INSERT gagal, ia mesti ditentukan sama ada keseluruhan transaksi digulung semula secara automatik.
Gelagat Transaksi Pelayan SQL
Secara lalai, SQL Server tidak melancarkan urus niaga secara automatik apabila ralat ditemui. Jika perintah dalam transaksi gagal, keseluruhan transaksi tetap terbuka dan komited, walaupun arahan berikutnya juga gagal. Ini bermakna bahawa perubahan yang dibuat oleh arahan yang berjaya akan kekal.
Paksa tarik balik transaksi
Untuk memastikan transaksi ditarik balik apabila ralat berlaku, terdapat dua kaedah:
Cadangan
Adalah disyorkan untuk menggunakan SET XACT_ABORT ON sebelum memulakan transaksi. Ini memastikan tingkah laku yang konsisten dan mengelakkan keperluan untuk pernyataan rollback yang jelas. Dalam kes ini, jika satu penyata INSERT dalam contoh transaksi gagal, SQL Server secara automatik melancarkan keseluruhan transaksi, membuat asal sebarang perubahan yang dibuat oleh pernyataan yang berjaya.
Atas ialah kandungan terperinci Bagaimanakah Pelayan SQL Mengendalikan Ralat Dalam Transaksi, dan Bagaimana Saya Boleh Memastikan Rollback?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!