Codeigniter使用dbforge创建ENUM字段

时间:2014-01-05 06:22:02

标签: php mysql codeigniter enums 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)默认字符集utf8 COLLATE   第2行的utf8_general_ci'

     

CREATE TABLE ci_demotest ENUM(数组)DEFAULT'a'NOT NULL)   DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

请帮助我,非常感谢。

1 个答案:

答案 0 :(得分:21)

试试这个

$field['test'] = array(
'type' => 'ENUM("a","b","c")',
'default' => 'a',
'null' => FALSE,
);
$this->dbforge->add_field($field);
$this->dbforge->create_table('demo'); 

Reference