首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CodeIgniter / dbForge -多个密钥

CodeIgniter / dbForge -多个密钥
EN

Stack Overflow用户
提问于 2012-11-09 22:56:40
回答 2查看 1.5K关注 0票数 2

我正在使用CodeIgniters DBforge来使用我的数据库。

我正在尝试将一个普通的PHP脚本转换为CodeIgniter,并且在将SQL更改为dbforge时遇到了一些问题。

我有以下SQL代码

代码语言:javascript
复制
CREATE TABLE `message2_recips` (
  `mid` int(10) unsigned NOT NULL,
  `seq` int(10) unsigned NOT NULL,
  `uid` int(10) unsigned NOT NULL,
  `status` char(1) NOT NULL default 'N',
  KEY `m2r1` USING BTREE (`mid`,`status`),
  KEY `m2r2` USING BTREE (`uid`,`status`)
) ENGINE=InnoDB;

除了我在底部的两个键值之外,一切都很好。

我尝试过的所有东西似乎都不起作用,包括:

代码语言:javascript
复制
$this->dbforge->add_key(array('mid', 'status'));
$this->dbforge->add_key(array('uid', 'status'));

翻译这篇文章的任何帮助都将不胜感激,我似乎找不到任何使用dbforge输入这篇文章的方法,这会使我的项目完全停滞不前。

谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-11-13 21:18:27

不可能(目前)通过DB Forge实现-它不支持表键的附加选项。您只能通过在之后使用原始SQL查询添加它们来实现这一点。

票数 1
EN

Stack Overflow用户

发布于 2015-04-14 15:25:17

DB_forge.php中有一个错误

开启多个键需要去除is_array条件( mysql驱动中有将数组键转换为多个键的功能)。

DBForge.php:101

删除:

代码语言:javascript
复制
    if (is_array($key))
    {
        foreach ($key as $one)
        {
            $this->add_key($one, $primary);
        }

        return;
    }
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13310366

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档