Справочник на статиите
MySQLКакви са поддържаните типове данни?MySQLПодробности за типовете данни в
MySQL типове данни
Типовете полета с данни, дефинирани в MySQL, са много важни за оптимизирането на вашата база данни.
MySQL поддържа различни типове, които грубо могат да бъдат разделени на три категории: числови, дата/час и низови (символни) типове.
Цифров тип
MySQL база данниПоддържат се всички стандартни SQL цифрови типове данни.
Тези типове включват строги числови типове данни (INTEGER, SMALLINT, DECIMAL и NUMERIC) и приблизителни числови типове данни (FLOAT, REAL и DOUBLE PRECISION).
Ключовата дума INT е синоним на INTEGER, а ключовата дума DEC е синоним на DECIMAL.
Типът данни BIT съдържа стойности на битови полета и поддържа MyISAM, MEMORY, InnoDB и BDB таблици.
Като разширение на стандарта SQL, MySQL също поддържа целочислените типове TINYINT, MEDIUMINT и BIGINT.Таблицата по-долу показва съхранението и диапазона, необходими за всеки тип цяло число.
тип | 大小 | диапазон (подписан) | диапазон (без знак) | употреба |
---|---|---|---|---|
TINYINT | 1 байт | (-128,127) | (0, 255) | малка целочислена стойност |
СМАЛИНТ | 2 байт | (-32 768, 32 767) | (0, 65 535) | голямо цяло число |
МЕДИУМИНТ | 3 байт | (-8 388 608, 8 388 607) | (0, 16 777 215) | голямо цяло число |
INT или INTEGER | 4 байт | (-2 147 483 648, 2 147 483 647) | (0, 4 294 967 295) | голямо цяло число |
BIGINT | 8 байт | (-9 233 372 036 854 775 808, 9 223 372 036 854 775 807) | (0, 18 446 744 073 709 551 615) | много голямо цяло число |
ПЛАВА | 4 байт | (-3.402 823 466 E+38, -1.175 494 351 E-38), 0, (1.175 494 351 E-38, 3.402 823 466 351 E+38) | 0, (1.175 494 351 E-38, 3.402 823 466 E+38) | единична точност стойност с плаваща запетая |
DOUBLE | 8 байт | (-1.797 693 134 862 315 7 E+308, -2.225 073 858 507 201 4 E-308), 0, (2.225 073 858 507 201 4 E-308, 1.797 693 134 862 315 7 E+308) | 0, (2.225 073 858 507 201 4 E-308, 1.797 693 134 862 315 7 E+308) | двойна точност стойност с плаваща запетая |
ДЕЦИМАЛЕН | За DECIMAL(M,D), ако M>D, това е M+2, иначе е D+2 | зависи от стойностите на M и D | зависи от стойностите на M и D | десетична стойност |
тип дата и час
Типовете дата и час, които представляват времеви стойности, са DATETIME, DATE, TIMESTAMP, TIME и YEAR.
Всеки тип време има диапазон от валидни стойности и "нулева" стойност, която се използва при указване на невалидна стойност, която MySQL не може да представи.
Типът TIMESTAMP има собствена функция за автоматично актуализиране, която ще бъде описана по-късно.
тип | 大小 (байт) | диапазон | формат | употреба |
---|---|---|---|---|
ДАННИ | 3 | 1000-01-01/9999-12-31 | ГГГГ-ММ-ДД | дата стойност |
ВРЕМЕ | 3 | ‘-838:59:59'/'838:59:59' | HH: MM: SS | времева стойност или продължителност |
ГОДИНА | 1 | 1901/2155 | ГГГГ | годишна стойност |
ВРЕМЕ ЗА СРЕЩА | 8 | 1000-01-01 00:00:00/9999-12-31 23:59:59 | ГГГГ-ММ-ДД ЧЧ: ММ: СС | Смесени стойности за дата и час |
КЛАПОТО ЗА ЧАС | 4 | 1970-01-01 00:00:00/2037 年某时 | ГГГГММДД ЧЧММСС | смесени стойности за дата и час, клеймо за време |
Тип низ
Типовете низове се отнасят до CHAR, VARCHAR, BINARY, VARBINARY, BLOB, TEXT, ENUM и SET.Този раздел описва как работят тези типове и как да ги използвате в заявки.
тип | 大小 | употреба |
---|---|---|
CHAR | 0-255 байта | низ с фиксирана дължина |
ВАРЧАР | 0-65535 байта | низ с променлива дължина |
TINYBLOB | 0-255 байта | двоичен низ до 255 знака |
МАЛЪК ТЕКСТ | 0-255 байта | кратък текстов низ |
петна | 0-65 535 байта | дълги текстови данни в двоична форма |
ТЕКСТ | 0-65 535 байта | дълги текстови данни |
СРЕДЕН БЛОБ | 0-16 777 215 байта | Средно дълги текстови данни в двоична форма |
СРЕДЕН ТЕКСТ | 0-16 777 215 байта | средно дълги текстови данни |
LONGBLOB | 0-4 294 967 295 байта | Много големи текстови данни в двоична форма |
ДЪЛЪГ ТЕКСТ | 0-4 294 967 295 байта | много големи текстови данни |
Типовете CHAR и VARCHAR са подобни, но се съхраняват и извличат по различен начин.Те също така се различават по отношение на максималната им дължина и дали се запазват интервалите в края.Не се извършва преобразуване на регистъра по време на съхранение или извличане.
Класовете BINARY и VARBINARY са подобни на CHAR и VARCHAR, с изключение на това, че съдържат двоични низове вместо недвоични низове.Тоест, те съдържат байтови низове вместо символни низове.Това означава, че те нямат набор от знаци и сортират и сравняват въз основа на числовите стойности на байтовете със стойност на колоната.
BLOB е двоичен голям обект, който може да съдържа променливо количество данни.Има 4 вида BLOB: TINYBLOB, BLOB, MEDIUMBLOB и LONGBLOB.Те просто се различават по максималната дължина на стойността, която могат да задържат.
Има 4 типа ТЕКСТ: TINYTEXT, TEXT, MEDIUMTEXT и LONGTEXT.Те съответстват на 4 типа BLOB, със същата максимална дължина и изисквания за съхранение.
Блог на Hope Chen Weiliang ( https://www.chenweiliang.com/ ) сподели „Какви са типовете данни, поддържани от MySQL? Подробно обяснение на типовете данни в MySQL", за да ви помогне.
Добре дошли да споделите връзката към тази статия:https://www.chenweiliang.com/cwl-466.html
Добре дошли в канала на Telegram в блога на Chen Weiliang, за да получите най-новите актуализации!
📚 Това ръководство съдържа огромна стойност, 🌟Това е рядка възможност, не я пропускайте! ⏰⌛💨
Споделете и харесайте, ако ви харесва!
Вашите споделяния и харесвания са нашата постоянна мотивация!