Mysql
 sql >> база данни >  >> RDS >> Mysql

Каква е разликата между tinyint, smallint, mediumint, bigint и int в MySQL?

Те заемат различно количество място и имат различни диапазони на приемливи стойности.

Ето размерите и диапазоните от стойности за SQL Server , други RDBMS имат подобна документация:

Оказва се, че всички те използват една и съща спецификация (с няколко незначителни изключения, отбелязани по-долу), но поддържат различни комбинации от тези типове (Oracle не е включен, защото има само NUMBER тип данни, вижте връзката по-горе):

<предварителен код> | SQL Server MySQL Postgres DB2----------------------------------------------------- ------tinyint | X X smallint | X X X Xmediumint | Xint/цяло число | X X X X bigint | X X X X

И те поддържат едни и същи диапазони от стойности (с едно изключение по-долу) и всички имат едни и същи изисквания за съхранение:

<предварителен код> | Обхват на байтове (подписан) Диапазон (неподписан)------------------------------------------------ -------------------------------------------------- -tinyint | 1 байт -128 до 127 0 до 255smallint | 2 байта -32768 до 32767 0 до 65535mediumint | 3 байта -8388608 до 8388607 0 до 16777215int/цяло число | 4 байта -2147483648 до 2147483647 0 до 4294967295bigint | 8 байта -9223372036854775808 до 9223372036854775807 0 до 18446744073709551615

Типовете "неподписани" са налични само в MySQL, а останалите просто използват подписаните диапазони, с едно забележително изключение:tinyint в SQL Server е неподписана и има диапазон от стойности от 0 до 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. Mysql Създаване на база данни със специални знаци в името

  2. MYSQL, ако заявка за избор връща 0 реда, тогава друга заявка за избор?

  3. Изберете група редове с максимална стойност на колона от друга колона

  4. MySQL връзката не работи

  5. MySQL съхранена процедура срещу функция, коя бих използвал кога?