MySQL отличатся хорошей скоростью работы, надежностью, гибкостью. Работа с ней, как правило, не вызывает больших трудностей. Поддержка сервера MySQL автоматически включается в поставку PHP.
Целые числа |
Общий вид указания типа данных: префиксINT [UNSIGNED] Необязательный флаг UNSIGNED задает, что будет создано поле для хранения беззнаковых чисел (больших или равных 0). |
TINYINT | Может хранить числа от -128 до 127 |
SMALLINT | Диапазон от -32 768 до 32 767 |
MEDIUMINT | Диапазон от -8 388 608 до 8 388 607 |
INT | Диапазон от -2 147 483 648 до 2 147 483 647 |
BIGINT | Диапазон от -9 223 372 036 854 775 808 до 9 223 372 036 854 775 807 |
|
Дробные числа |
Точно так же, как целые числа подразделяются в MySQL на несколько разновидностей, MySQL поддерживает и несколько типов дробных чисел. В общем виде они записываются так: ИмяТипа[(length, decimals)] [UNSIGNED] |
Здесь length - количество знакомест (ширина поля), в которых будет размещено дробное число при его передаче. decimals - количество знаков после десятичной точки, которые будут учитываться. UNSIGNED - задает беззнаковые числа. |
FLOAT | Число с плавающей точкой небольшой точности. |
DOUBLE | Число с плавающей точкой двойной точности. |
REAL | Синоним для DOUBLE. |
DECIMAL | Дробное число, хранящееся в виде строки. |
NUMERIC | Синоним для DECIMAL. |
|
Строки |
Строки представляют собой массивы символов. Обычно при поиске по текстовым полям по запросу SELECT не берется в рассмотрение регистр символов, т.е. строки "Вася" и "ВАСЯ" считаются одинаковыми. Кроме того, если база данных настроена на автоматическую перекодировку текста при его помещении и извлечении, эти поля будут храниться в указанной вами кодировке.
Для начала ознакомимся с типом строки, которая может хранить не более length символов, где length принадлежит диапазону от 1 до 255.
VARCHAR (length) [BINARY]
При занесении некоторого значения в поле такого типа из него автоматически вырезаются концевые пробелы. Если указан флаг BINARY, то при запросе SELECT строка будет сравниваться с учетом регистра.
|
VARCHAR | Может хранить не более 255 символов. |
TINYTEXT | Может хранить не более 255 символов. |
TEXT | Может хранить не более 65 535 символов. |
MEDIUMTEXT | Может хранить не более 16 777 215 символов. |
LONGTEXT | Может хранить не более 4 294 967 295 символов. |
Чаще всего применяется тип TEXT, но если вы не уверены, что данные не будут превышать 65 536 символов, используйте LONGTEXT. |
|
Бинарные данные |
Бинарные данные - это почти то же самое, что и данные в формате TEXT, но только при поиске в них учитывается регистр символов. |
TINYBLOB | Может хранить не более 255 символов. |
BLOB | Может хранить не более 65 535 символов. |
MEDIUMBLOB | Может хранить не более 16 777 215 символов. |
LONGBLOB | Может хранить не более 4 294 967 295 символов. |
BLOD-данные не перекодируются автоматически, если при работе с установленным соединением включена возможность перекодирования текста "на лету". |
|
Дата и время |
MySQL поддерживает несколько типов полей, специально приспособленных для хранения дат и времени в различных форматах. |
DATE | Дата в формате ГГГГ-ММ-ДД |
TIME | Время в формате ЧЧ:ММ:СС |
DATETIME | Дата и время в формате ГГГГ-ММ-ДД ЧЧ:ММ:СС |
TIMESTAMP | Дата и время в формате timestamp. Однако при получении значения поля оно отображается не в формате timestamp, а в виде ГГГГММДДЧЧММСС, что сильно умаляет преимущества его использования в PHP. |