Có vẻ như, tác vụ đã cho đó không thể được giải quyết trong các ràng buộc nhất định. Nếu tôi hiểu đúng, số lượng cơ sở dữ liệu và lược đồ của hàng là hằng số.
Vì vậy, các biến còn lại:
- "Tiêm" bổ sung vào cơ sở dữ liệu
- Thủ thuật tạm thời
- Thủ thuật kích hoạt
- "Ràng buộc muộn" đối với các thay đổi, được sao chép không kịp thời
Hiện tại, tôi chỉ tìm thấy một ý tưởng có vẻ hiệu quả:
- Thêm trình kích hoạt trên bảng "Dòng", để sửa đổi dấu thời gian của bản ghi "Đơn hàng" (last_line_time)
- Trong bản sao, hãy đợi cho đến khi một Dòng có thời gian, bằng last_line_time xuất hiện.
- Nếu max (lines.line_time)> order.last_line_time hơn order thì đã lỗi thời
- Nếu max (lines.line_time)
- Nếu max (lines.line_time) ==order.last_line_time hơn mọi thứ là ổn thì bây giờ :)
Tuy nhiên, trường hợp này có thể không thành vòng lặp vô hạn, nếu Lines được sửa đổi liên tục và bản sao bảng Lines luôn bị tụt hậu.