Computer >> Máy Tính >  >> Lập trình >> MySQL

MySQL có thể xử lý các lỗi như thế nào trong quá trình thực thi trình kích hoạt?


Giả sử nếu có lỗi xảy ra trong quá trình thực thi trình kích hoạt thì MySQL có thể xử lý nó như sau -

  • Nếu kích hoạt TRƯỚC không thành công, thì thao tác trên hàng tương ứng sẽ không được thực hiện.
  • Trình kích hoạt TRƯỚC được kích hoạt khi cố gắng chèn hoặc sửa đổi hàng, bất kể lần thử sau đó có thành công hay không.
  • Kích hoạt SAU chỉ được thực thi nếu bất kỳ kích hoạt TRƯỚC KHI kích hoạt và hoạt động hàng thực thi thành công.
  • Một lỗi trong khi kích hoạt TRƯỚC hoặc SAU dẫn đến việc không thực hiện được toàn bộ câu lệnh đã gây ra lệnh gọi kích hoạt.
  • Đối với các bảng giao dịch, lỗi của một câu lệnh sẽ gây ra việc khôi phục tất cả các thay đổi được thực hiện bởi câu lệnh. Lỗi trình kích hoạt làm cho câu lệnh không thành công, do đó lỗi trình kích hoạt cũng gây ra việc khôi phục. Đối với các bảng không giao dịch, không thể thực hiện khôi phục như vậy, do đó, mặc dù câu lệnh không thành công, bất kỳ thay đổi nào được thực hiện trước thời điểm xảy ra lỗi vẫn có hiệu lực.