Laravel transaction lại là một nhóm lắm các câu lệnh chưa SQL xử lý tuần tự các hoạt động cơ sở data. Một transaction sẽ không được xem là biến thành công khi chỉ cần một thao tác đơn nào đó trong nó không hoàn tất. 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

Laravel thứ transaction

Php tạo nên mysql transaction

Trong bất vẫn cứ database không nào, sự yếu chính kém trong việc quản lý các thao tác với data có lẽ dẫn tới các vấn đề về xung đột và hiệu năng trong chương trình có đa dạng users, Khi số lượng users thao tác với data ngày một đẩy mạnh, việc quản lý thao tác data hiệu sao cho quả là cực kỳ cần thiết.Php mysql transactionSQL dùng để bảo đảm tính mất toàn vẹn mới data cho mỗi transaction (php đột nhiên mysql transaction) và cách Chương trình quản lý các transaction chất lượng.
Ví dụ dễ dễ dàng có lẽ nhất là những tiến trình cài đặt Chương trình hoặc gỡ bỏ Chương trình. Việc cài đặt được chia thành các bước, làm tuần tự từ đầu đến cuối, nếu đa số các bước thực thi biến thành công có nghĩa với việc tiến trình cài đặt hoặc gỡ bỏ Chương trình biến thành 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 có bất cứ chuyển đổi nào trên máy tính. Trong php mysql transaction, để dùng các giao dịch chúng ta có có các hướng dẫn sau:
  • COMMIT rườm rà : giống như git, nó được dùng để lưu các chuyển đổi.
  • ROLLBACK hiện đại : cũng giống như vậy, nó chuyên dụng cho để quay trở lại trạng thái trước khi chuyển đổi.
  • SAVEPOINT tận tay : Tạo điểm trong các nhóm giao dịch để ROLLBACK.
  • SET TRANSACTION thuận tiện : Đặt tên cho một giao dịch. Ở đây trong SQL tôi sẽ chỉ đề cập đến những từ khóa mà đa số người có lẽ search trên gg. Sẽ có đa dạng tài liệu chi tiết hơn về giao dịch SQL.

Transaction mong chờ sql server

Transaction chưa sql server là không 1 tập các câu cần lệnh thực thi tới database, 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 đa số các câu lệnh đã thực thi, trả lại database giống như lúc start transaction. Transaction sql server có một chuẩn được gọi tắt là ACID bao gồm 4 thuộc tính:
  • Atomicity gọi (Tính tự trị): bảo đảm đa số 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ự chuyển đổi.
  • Consistency người quản lý (Tính nhất quán): bảo đảm đa số các thao tác trên cơ sở data được chuyển đổi sau khi giao dịch biến thành công và không xảy ra lỗi.
  • Isolation quảng bá (Tính cô lập): bảo đảm 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 ảnh hưởng tới D chuyển tiền.
  • Durability bỏ tiền (Tính bền vững): bảo đảm kết quả hoặc ảnh hưởng của transaction vẫn luôn tồn tại, kể cả khi chương trình xảy ra lỗi.
Transaction sql serverTrong chương trình Laravel bạn có lẽ dùng transaction dễ dàng bằng 2 cách: Cách bằng tay Để bắt đầu transaction: DB::beginTransaction(); Để rollback: DB::rollBack(); Để commit: DB::commit();
Cách theo nhu cầu tự động: Nếu có lỗi xảy ra thì sẽ tự động rollback và ngược lại nếu biến thành công thì sẽ tự động commit:
DB::transaction(function () 
    $user đã = User::findOrFail($id);
    cần $order = Order::create([
        đã 'user_id' => $user->id,
        'money' => 1000000,
    ]);
    $availableAmount = $user->amount - 1000000;
    $user->update(['amount' => $availableAmount]);
 chưa );

Laravel transaction mysql - Các câu lệnh thực thi tới database

Nguyễn Thanh Tuấn ()

Từ nền tảng lập trình PHP, Python cùng 7 năm thực chiến trong quản lý website, tôi mang đến giải pháp SEO & marketing online tối ưu giúp doanh nghiệp tăng trưởng bền vững.