DROP TABLE IF EXISTS `object_fields`; CREATE TABLE IF NOT EXISTS `object_fields` ( `id` INT(11) NOT NULL COMMENT 'PK', `name` varchar(64) NOT NULL COMMENT 'Название произвольного поля', `title` varchar(64) NOT NULL COMMENT 'Заголовок произвольного поля (для XML)', `type` TINYINT(4) DEFAULT NULL COMMENT 'Тип поля: 0 - text, 1 - number, 2 - select, 3 - multi select, 4 - checkbox, 5 - textarea', `params` TEXT NULL COMMENT 'Параметры произвольного поля', `order` tinyint(4) NOT NULL COMMENT 'Порядок сортировки', `agency_id` mediumint(9) NOT NULL COMMENT 'ИД агентства, которому принадлежит поле', `is_available` TINYINT(4) DEFAULT 0 COMMENT 'Флаг, поле доступно для отображения в карточке', `is_active` TINYINT(4) DEFAULT 0 COMMENT 'Флаг, поле доступно для выгрузки в XML', `created_at` datetime DEFAULT CURRENT_TIMESTAMP COMMENT 'Дата/время создания (добавления) поля', `created_by` mediumint(9) NOT NULL COMMENT 'Пользователь, который добавил произвольное поле', `updated_at` datetime DEFAULT CURRENT_TIMESTAMP COMMENT 'Дата/время обновления (редактирования) поля', `updated_by` mediumint(9) NOT NULL COMMENT 'Пользователь, который изменил произвольное поле' ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_general_ci COMMENT='Таблица произвольных полей объектов'; ALTER TABLE `object_fields` ADD PRIMARY KEY (`id`), ADD KEY `name` (`name`), ADD KEY `title` (`title`), ADD KEY `type` (`type`), ADD KEY `params` (`params`(255)), ADD KEY `order` (`order`), ADD KEY `agency_id` (`agency_id`), ADD KEY `active` (`is_available`, `is_active`), ADD KEY `created` (`created_at`, `created_by`), ADD KEY `updated` (`updated_at`, `updated_by`); ALTER TABLE `object_fields` MODIFY `id` int(11) NOT NULL AUTO_INCREMENT;