|
@@ -124,4 +124,22 @@
|
|
|
| TIME | Время в формате HH:MM:SS |
|
|
|
| DATETIME | Дата и время в формате YYYY-MM-DD HH:MM:SS |
|
|
|
| TIMESTAMP | DATETIME, который автоматически заполняется временем сохранения или изменения записи |
|
|
|
-| YEAR | Год, в двух (YEAR(2)) или четырехцифровом (YEAR(4))формате |
|
|
|
+| YEAR | Год, в двух (`YEAR(2)`) или четырехцифровом (`YEAR(4)`) формате |
|
|
|
+
|
|
|
+### Строки и текст
|
|
|
+
|
|
|
+Все эти типы данных ведут себя схоже, однако отличаются по внутренней реализации.
|
|
|
+
|
|
|
+| Тип | Описание | Занимаемое местa (байт) |
|
|
|
+| --------------------------------- | ----------------------------------------------------------------------------- | ----------------------- |
|
|
|
+| CHAR(M) | Строка длиной до М (до 255) | M |
|
|
|
+| VARCHAR(M) | Строка длиной до М (до 65535) | Зависит от длины строки |
|
|
|
+
|
|
|
+В общем случае оба типа данных ведут себя одинаково, однако `VARCHAR` обрабатывается чуть медленнее, но экономичней по потреблению памяти.
|
|
|
+Строки длиннее M обрезаются при сохранении в таблицу. **Суммарная длина всех полей типа VARCHAR** в записи не может превышать **65535**.
|
|
|
+Следовательно, эти два типа данных предназначены для хранения небольших строк типа логинов, паролей, имен, фамилий и тому подобного.
|
|
|
+
|
|
|
+### Текст
|
|
|
+
|
|
|
+Для хранения больших объемов текста существуют типы `TINYTEXT` (255), `TEXT` (65535), `MEDIUMTEXT` (16777216) и `LONGTEXT` (4294967296). Так же эти типы
|
|
|
+предоставляют возможности *полнотекстового поиска* средствами MySQL, в отличии от `CHAR` и `VARCHAR`.
|