nhanh Laravel chớ transaction new là đã một nhóm lại các câu lệnh SQL xử lý old tuần tự các old hoạt động đích cơ new sở không thể data. chưa Một transaction nhanh sẽ quá không được đang xem cũ là chưa biến thành chỉ công khi ngay chỉ cần chính một thao nhất tác new đơn không thể nào new đó old trong lắm nó không cũng hoàn tất. old Trong bài đừng viết chớ này STV rất sẽ có các hướng dẫn các bạn cách dùng laravel transaction trong MySQL và trong Laravel.
Laravel được transaction
Php những mysql transaction

chưa Ví cần dụ cũ dễ dàng old nhất new là tiến old trình cài đặt old Chương trình đột nhiên hoặc lắm gỡ old bỏ rất Chương trình. Việc cả cài quá đặt old được chia thành new các bước, bỗng nhiên làm được tuần tự từ bỗng nhiên đầu new đến bỗng nhiên cuối, rất nếu đa rất số các bước rất thực old thi lại biến thành công có không thể nghĩa với việc nhất tiến trình new cài chậm đặt sẽ 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: thôi giống như dễ git, nó chẳng được dùng để rất lưu old các chuyển rất đổi.
- ROLLBACK: mới cũng có thể giống đột nhiên như chỉ vậy, có lẽ nó chuyên dụng nhanh cho chậm để quay thôi trở lại trạng thái trước khi chỉ chuyển đổi.
- SAVEPOINT: ngay Tạo điểm đột nhiên trong cần các nhất nhóm giao dịch để ROLLBACK.
- SET new TRANSACTION: Đặt tên cho mới một old giao đang dịch. Ở đây trong new SQL tôi những sẽ chớ chỉ đề cập old đến nhanh những có lẽ từ khóa mà cả đa số new người thường có nhất lẽ search trên gg. Sẽ đang có chưa đa old dạng tài liệu old chi cũ tiết old hơn luôn về đích giao new dịch new SQL.
Transaction luôn sql server
nhất Transaction new sql ngay server là 1 tập mất các ngay câu có thể lệnh luôn thực thi lại tới database, cả các cũ câu đích lệnh được thực thi dễ 1 cách new tuần tự, nếu có có thể bất new cứ đừng lệnh nào bị lỗi, không transaction cũ sẽ new dừng luôn lại đang và không thể rollback DB vẫn đa số các dễ câu chậm lệnh đã thực thi, trả old lại chậm database mới giống dễ như vẫn 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 old (Tính mất tự trị): bảo đang đảm đa được số các luôn hành động trong rất phạm vi một mất đơn vị transaction là biến thành new công old hoàn toàn. nhất Ngược lại, transaction sẽ old bị cả dừng ngay ở new thời chớ điểm lỗi, và sẽ bỗng nhiên phục hồi luôn quay vẫn ngược lại (rollback) lại thời chậm điểm chưa có thể xảy ra sự không thể chuyển new đổi.
- Consistency (Tính không nhất không quán): bảo không thể đảm đa số cần các old thao new tác trên rất cơ sở data được chuyển bỗng nhiên đổi new sau chớ khi thôi giao dịch biến thành công chớ và không bỗng nhiên xảy ra dễ lỗi.
- Isolation (Tính cô lập): bảo old đảm lại transaction này hoạt động chỉ độc lập old so với transaction khác. Ví dụ cũ C quá đang nhất chuyển bỗng nhiên tiền thì rất sẽ lại không chính ảnh old hưởng tới chưa D không thể chuyển tiền.
- Durability new (Tính thôi bền quá vững): bảo lại đảm mới kết mất quả hoặc sẽ ảnh chớ hưởng của transaction những vẫn luôn tồn tại, kể không thể cả khi chương new trình nhanh xảy sẽ ra lỗi.
Trong Laravel bạn old có lẽ chớ dùng không thể transaction dễ dàng ngay bằng mới 2 chớ cách: Cách cũng bằng tay Để new bắt old đầu transaction: mới DB::beginTransaction(); Để rollback: DB::rollBack(); cần Để nhất commit: DB::commit();
chính Cách mới tự những động: Nếu có lỗi lại xảy new ra cả thì sẽ cũng tự rất động rất rollback quá và ngược cần lại rất nếu luôn biến old thành lắm công mất thì old sẽ tự old động commit:
thôi
DB::transaction(function chưa () đích $user = new User::findOrFail($id); $order = vẫn Order::create([ chưa 'user_id' đang => chẳng $user->id, old 'money' đột nhiên => new 1000000, lại ]); $availableAmount = bỗng nhiên $user->amount cũ - 1000000; dễ $user->update(['amount' => ngay $availableAmount]); chưa );
Nguyễn Văn Hải ()
Với hơn 4 năm kinh nghiệm Drupal 8 năm kinh nghiệm trong quản lý web site tư vấn giải pháp đẩy top, Marketing tối ưu nhất cho công ty. Hiện giữ chức vụ quản lý kinh doanh tại Siêu Tốc Việt.