Tôi đang triển khai một ứng dụng cơ sở dữ liệu và tôi sẽ sử dụng cả JavaDB lẫn MySQL làm cơ sở dữ liệu. Tôi có một cột ID trong bảng của tôi có số nguyên như là loại và tôi sử dụng cơ sở dữ liệu auto_increment-chức năng cho giá trị.Điều gì sẽ xảy ra khi auto_increment trên cột nguyên đạt đến max_value trong cơ sở dữ liệu?
Nhưng điều gì sẽ xảy ra khi tôi nhận được hơn 2 (hoặc 4) tỷ bài viết và số nguyên là không đủ? Là số nguyên tràn và tiếp tục hoặc là một ngoại lệ ném mà tôi có thể xử lý?
Có, tôi có thể thay đổi miễn là kiểu dữ liệu, nhưng làm cách nào để kiểm tra khi nào cần thiết? Và tôi nghĩ rằng có vấn đề với việc nhận các hàm last_inserted_id() nếu tôi sử dụng lâu dài như kiểu dữ liệu cho cột ID.
Rất tiếc, chỉ cần sửa lỗi sẽ mất hơn 9 năm :) Sau 1 phút, 360 tỷ tnx sẽ xảy ra. Sau 1h, hóa đơn 21600. Trong 1 ngày, 518400 tỷ tnx sẽ được xác minh. 1 năm: 1892160 nghìn tỷ. Sau 8 năm, 15.137.280 ngàn tỷ sẽ được lưu trong db. Giới hạn của UNSIGNED BIGINT là 18.446.744 nghìn tỷ. –
bạn nhận được một số không thêm trong 1 năm. vì vậy nó sẽ là khoảng 97 năm. – lockedscope
Và nếu tôi có 2000 proxy thực hiện một cuộc tấn công chèn tung ra nhiều chủ đề/yêu cầu? . Hoặc ví dụ tôi có một chức năng tải lên lịch sử với (60.000 mục) để tải lên lịch sử đó sẽ yêu cầu ít yêu cầu hơn. –