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

Sự khác biệt giữa tinyint, smallint, mediumint, bigint và int trong MySQL là gì?

Chúng chiếm nhiều dung lượng khác nhau và chúng có các phạm vi giá trị chấp nhận được khác nhau.

Đây là kích thước và phạm vi giá trị cho SQL Server , các RDBMS khác có tài liệu tương tự:

Hóa ra tất cả chúng đều sử dụng cùng một đặc điểm kỹ thuật (với một vài ngoại lệ nhỏ được lưu ý bên dưới) nhưng hỗ trợ nhiều kiểu kết hợp khác nhau (không bao gồm Oracle vì nó chỉ có một NUMBER kiểu dữ liệu, xem liên kết ở trên):

             | SQL Server    MySQL   Postgres    DB2
---------------------------------------------------
tinyint      |     X           X                
smallint     |     X           X         X        X
mediumint    |                 X
int/integer  |     X           X         X        X 
bigint       |     X           X         X        X

Và chúng hỗ trợ các phạm vi giá trị giống nhau (với một ngoại lệ bên dưới) và tất cả đều có cùng yêu cầu lưu trữ:

            | Bytes    Range (signed)                               Range (unsigned)
--------------------------------------------------------------------------------------------
tinyint     | 1 byte   -128 to 127                                  0 to 255
smallint    | 2 bytes  -32768 to 32767                              0 to 65535
mediumint   | 3 bytes  -8388608 to 8388607                          0 to 16777215
int/integer | 4 bytes  -2147483648 to 2147483647                    0 to 4294967295
bigint      | 8 bytes  -9223372036854775808 to 9223372036854775807  0 to 18446744073709551615 

Các loại "không dấu" chỉ có sẵn trong MySQL và phần còn lại chỉ sử dụng các phạm vi có dấu, với một ngoại lệ đáng chú ý: tinyint trong SQL Server là chưa được ký và có phạm vi giá trị từ 0 đến 255



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào để kết nối lại các kết nối bị mất với EclipseLink?

  2. Tự động cập nhật bảng mysql hai mươi bốn giờ một lần

  3. Cách tạo Pivot Table trong MySQL

  4. Làm thế nào để có mysqldump với UTF8?

  5. Phân trang bằng MySQL LIMIT, OFFSET