Nếu bạn có ràng buộc khóa ngoại, làm thế nào bạn có thể xóa một hàng khỏi bảng A khi bảng B tham chiếu đến hàng đó? Đó dường như là một lỗi đối với tôi.
Bất kể, bạn có thể tránh việc sử dụng lại các giá trị tự động tăng bằng cách đặt lại độ lệch khi ứng dụng của bạn bắt đầu sao lưu. Truy vấn giá trị tối đa trong tất cả các bảng tham chiếu đến bảng A, sau đó thay đổi bảng trên mức tối đa đó, ví dụ:nếu giá trị tối đa là 989, hãy sử dụng cái này:
alter table TableA auto_increment=999;
Cũng cần lưu ý rằng các công cụ MySQL khác nhau có hành vi tự động tăng khác nhau. Thủ thuật này hoạt động cho InnoDB.