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

Dấu thời gian unix nên được lưu trữ trong các cột int như thế nào?

Dấu thời gian UNIX tiêu chuẩn là một số nguyên 32 bit có dấu, trong MySQL là một cột "int" thông thường. Không có cách nào bạn có thể lưu trữ 9.999.999.999, vì đó là cách nằm ngoài phạm vi đại diện - int 32 bit cao nhất của bất kỳ loại nào có thể đạt được là 4.294.967.295. Mức cao nhất mà 32 bit đã ký vào đi là 2,147,483,647.

Nếu / khi dấu thời gian UNIX chuyển sang kiểu dữ liệu 64bit, thì bạn sẽ phải sử dụng MySQL "bigint" để lưu trữ chúng.

Đối với int(10) , (10) phần chỉ dành cho mục đích hiển thị. MySQL sẽ vẫn sử dụng nội bộ 32bit đầy đủ để lưu trữ số, nhưng chỉ hiển thị 10 bất cứ khi nào bạn thực hiện một lựa chọn trên bảng.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tôi có thể sử dụng VARCHAR làm KHÓA CHÍNH không?

  2. Cập nhật cột dựa trên các giá trị khớp trong bảng khác trong mysql

  3. Có cách nào để khôi phục sau khi cam kết trong MySQL không?

  4. Python + MySQL - Chèn hàng loạt

  5. Lược đồ cơ sở dữ liệu cho trò chuyện:riêng tư và nhóm