Laravel transaction là một nhóm các câu lệnh SQL xử lý tuần tự các hoạt động cơ sở data. Một transaction sẽ không được xem là trở thành rất
chính
chưa công khi chỉ sẵn sàng lại
chỉ
không thể một thao tác đơn nào đó trong nó không hoàn thành lại
chẳng
chớ. Trong bài viết này STV sẽ có các hướng dẫn các bạn cách dùng laravel transaction trong MySQL và trong Laravel.
Laravel transaction
Php mysql transaction
Trong bất cứ dữ liệu cũ
không
đừngbase nào, sự yếu kém trong việc quản lý các thao tác với data có thể dẫn tới các vấn đề về xung đột và hiệu năng trong ứng dụng rất
chính
có lẽ có nhiều users, Khi số lượng users thao tác với dữ liệu chậm
những
thường ngày một gia tăng, việc quản lý thao tác data hiệu sao đưa cho quả là rất sẵn sàng rất
chính
có thể thiết.
SQL dùng để đảm bảo mới
quá
đột nhiên tính toàn vẹn data đưa cho mỗi transaction (php mysql transaction) và cách chương trình quản lý các transaction tốt dễ
cũng
luôn.
Ví dụ dễ dàng nhất là tiến trình thiết lập cũ
cũng
không thể chương trình hoặc gỡ bỏ ứng dụng chậm
chẳng
bỗng nhiên. Việc cài đặt được phân loại các bước, làm tuần tự từ đầu đến cuối, nếu mọi các bước thực thi biến thành công sở hữu dễ
đang
có lẽ nghĩa với việc tiến trình setup hoặc gỡ bỏ phần mềm trở thành nhất
đang
mất công và ngược lại, một phép thất bại thì tiến trình phải rollback lại tức sẽ không nắm tới bất kể đổi thay nào trên máy tính. Trong php mysql transaction, để dùng các giao dịch chúng ta có hướng dẫn sau:

- COMMIT: giống như git, nó được dùng để lưu các chuyển đổi.
- ROLLBACK: tương tự như cần rất luôn vậy, nó dùng cho để quay trở lại trạng thái trước khi đổi thay.
- SAVEPOINT: Tạo điểm trong các nhóm giao dịch để ROLLBACK.
- SET TRANSACTION: Đặt tên tặng dễ cũng chớ một giao dịch. Ở đây trong SQL tôi sẽ chỉ đề cập đến những từ khóa mà hầu hết người khả năng cao tìm kiếm dễ quá không thể trên google. Sẽ có phổ biến tài liệu chi tiết hơn về giao dịch SQL.
Transaction sql server
Transaction sql server là 1 tập các câu lệnh thực thi tới dữ liệu nhất đích có thểbase, các câu lệnh được thực thi 1 cách tuần tự, nếu có bất cứ lệnh nào bị lỗi, transaction sẽ dừng lại và rollback DB mọi các câu lệnh đã thực thi, trả lại dữ liệu dễ đang bỗng nhiênbase như lúc start transaction. Transaction sql server sở hữu lại đang thôi một chuẩn được tìm đến rất quá đừng tắt là ACID bao gồm 4 thuộc tính:- Atomicity (Tính tự trị): chắc chắn toàn bộ cần đang không thể các hành động trong phạm vi một đơn vị transaction là biến thành công hoàn toàn. Ngược lại, transaction sẽ bị dừng ngay ở thời điểm lỗi, và sẽ phục hồi quay ngược (rollback) lại thời điểm chưa xảy ra sự thay đổi rất chẳng chớ.
- Consistency (Tính nhất quán): đảm bảo nhất chỉ luôn toàn bộ cũ chẳng có lẽ các thao tác trên cơ sở data được đổi thay sau khi giao dịch trở thành cũ chỉ chớ công và không xảy ra lỗi.
- Isolation (Tính cô lập): chắc chắn transaction này hoạt động độc lập so với transaction khác. Ví dụ C đang chuyển tiền thì sẽ không tác động tới D chuyển tiền.
- Durability (Tính vững bền lại chẳng có lẽ): bảo đảm thành quả nhất chính không thể hoặc liên quan của transaction vẫn luôn tồn tại, kể cả khi chương trình xảy ra lỗi.

DB::transaction(function () $user = User::findOrFail($id); $order = Order::create([ 'user_id' => $user->id, 'money' => 1000000, ]); $availableAmount = $user->amount - 1000000; $user->update(['amount' => $availableAmount]); chưa );
Dữ liệu không tồn tại cho domain này. (Dữ liệu không tồn tại cho domain này.)
Dữ liệu không tồn tại cho domain này.