Codeigniter 使用 dbforge 创建 ENUM 字段

Posted

技术标签:

【中文标题】Codeigniter 使用 dbforge 创建 ENUM 字段【英文标题】:Codeigniter creating an ENUM field with dbforge 【发布时间】:2014-01-22 17:25:03 【问题描述】:

我创建了一个 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 服务器版本,以便使用正确的语法 靠近'数组)默认'a'不为空)默认字符集utf8排序 utf8_general_ci' 在第 2 行

创建表ci_demo (test ENUM(Array) 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'); 

Reference

【讨论】:

以上是关于Codeigniter 使用 dbforge 创建 ENUM 字段的主要内容,如果未能解决你的问题,请参考以下文章

使用新的dbForge Studio for SQL Server v5.8进行数据库差异管理

Devart dbForge Studio 2020 for MySQL Enterprise中文版

如何使用 codeigniter 创建 seo 友好的 url?

使用codeigniter查询本月创建的记录

使用 codeigniter 创建基于级别的动态菜单

使用 CodeIgniter (3.1.0) 创建会话