Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Kiểm soát thanh toán đồng thời

Tốt nhất là bạn nên có stock trong Product của bạn mô hình để giữ số lượng có sẵn cho sản phẩm đó.

Khi ai đó đặt hàng, một order riêng phiên bản phải được tạo với số lượng của Product được chỉ định. Số hàng chỉ được giảm sau khi nhận được lệnh gọi lại cho order đó hoặc một webhook nhận được xác nhận thanh toán.

Điều này sẽ không ngăn cản những khách hàng khác đặt hàng cho cùng một sản phẩm cho đến khi mặt hàng đó thực sự đã được bán.

Một cách tiếp cận khác có thể là giảm lượng hàng tồn kho khi khách hàng truy cập trang gọi lại và giải phóng hàng nếu không nhận được khoản thanh toán trong một khoảng thời gian nhất định. Nhiệm vụ nền sẽ được yêu cầu cho việc này.

Lưu ý: sử dụng F đối tượng từ django.models trong khi giảm lượng hàng để giảm lượng hàng từ giá trị DB chứ không phải thuộc tính phiên bản.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cập nhật một cột bằng cách sử dụng một truy vấn con được chọn vào cùng một bảng

  2. Lỗi cú pháp hoặc vi phạm quyền truy cập:1055 Biểu thức # 17 trong nhóm theo

  3. Mô hình cơ sở dữ liệu cho các mục đích quốc tế và đa ngôn ngữ

  4. Tham gia pivot Laravel 5.5 để nhận các giá trị pivot với kết quả MySQL chính

  5. MySQL:Bạn không thể chỉ định 'nhiệm vụ' của bảng mục tiêu để cập nhật trong mệnh đề FROM