Типы колонок
Материал из DevelopmenOnTheEdge
								Версия от 15:28, 19 сентября 2014; Lan  (обсуждение | вклад)
В BeanExplorer4 определены типы Шаблон:ColumnDef таблиц, независимые от движка СУБД. В коде тип колонок хранится в классе SqlColumnType. У типа всегда есть строковое представление. Имеются следующие типы:
- KEYTYPE — тип, который используется по умолчанию для первичного ключа таблицы (обычно совпадает с BIGINT).
 - Текстовые:
 
- CHAR — строка фиксированной длины. Длина задаётся в скобках. Например: CHAR(10).
 - VARCHAR — строка произвольной длины вплоть до заданной. Длина задаётся в скобках. Например: VARCHAR(15).
 - TEXT — большое текстовое поле (TODO:уточнить минимальную длину).
 - BIGTEXT — очень большое текстовое поле (TODO:уточнить минимальную длину).
 
- Двоичные:
 
- BLOB — бинарные данные (TODO:уточнить минимальную длину).
 - MEDIUMBLOB — бинарные данные (TODO:уточнить минимальную длину).
 
- Численные:
 
- INT — целое знаковое число (минимум 32-битное).
 - INT UNSIGNED — целое беззнаковое число (минимум 32-битное). Поддерживается не всеми движками.
 - BIGINT — целое знаковое число (минимум 64-битное).
 - BIGINT UNSIGNED — целое беззнаковое число (минимум 64-битное). Поддерживается не всеми движками.
 - SMALLINT — целое знаковое число (минимум 16-битное).
 - DECIMAL — дробное число указанной длины с указанной точностью (количество десятичных знаков). Например DECIMAL(10,2).
 - CURRENCY — валюта. Сейчас совпадает с DECIMAL(18,2).
 
- Дата и время:
 
- DATE — дата.
 - DATETIME — дата и время.
 - TIMESTAMP — дата и время. Совпадает с DATETIME во всех движках кроме MySQL. Подробнее тут: Datetime или timestamp.
 
- Перечислимые:
 
- ENUM — перечисление допустимых значений. Например ENUM(on,off,pending)
 - BOOL — допустимо два значения — 'no' и 'yes' (совпадает с ENUM(no,yes))