Codeigniter создает поле ENUM с помощью dbforge
Я создаю поле ENUM, вот мой код:
$field['test'] = array(
'type' => 'ENUM',
'constraint' => array('a','b','c'),
'default'=> "a"
);
$this->dbforge->add_field($field);
$this->dbforge->create_table('demo');
И я получил сообщение:
Номер ошибки: 1064
У вас есть ошибка в вашем синтаксисе SQL; проверьте руководство, соответствующее вашей версии сервера MySQL, чтобы найти правильный синтаксис для использования рядом с 'Array) DEFAULT' a 'NOT NULL) DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci' в строке 2
СОЗДАТЬ СТОЛ
ci_demo
(test
ENUM (Массив) DEFAULT 'a' NOT NULL) УСТАНОВКА ХАРАКТЕРА ПО УМОЛЧАНИЮ utf8 COLLATE utf8_general_ci;
Пожалуйста, помогите мне, большое спасибо.
1 ответ
Решение
Попробуй это
$field['test'] = array(
'type' => 'ENUM("a","b","c")',
'default' => 'a',
'null' => FALSE,
);
$this->dbforge->add_field($field);
$this->dbforge->create_table('demo');