我正在使用CodeIgniters DBforge来使用我的数据库。
我正在尝试将一个普通的PHP脚本转换为CodeIgniter,并且在将SQL更改为dbforge时遇到了一些问题。
我有以下SQL代码
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;除了我在底部的两个键值之外,一切都很好。
我尝试过的所有东西似乎都不起作用,包括:
$this->dbforge->add_key(array('mid', 'status'));
$this->dbforge->add_key(array('uid', 'status'));翻译这篇文章的任何帮助都将不胜感激,我似乎找不到任何使用dbforge输入这篇文章的方法,这会使我的项目完全停滞不前。
谢谢。
发布于 2012-11-13 21:18:27
不可能(目前)通过DB Forge实现-它不支持表键的附加选项。您只能通过在之后使用原始SQL查询添加它们来实现这一点。
发布于 2015-04-14 15:25:17
DB_forge.php中有一个错误
开启多个键需要去除is_array条件( mysql驱动中有将数组键转换为多个键的功能)。
DBForge.php:101
删除:
if (is_array($key))
{
foreach ($key as $one)
{
$this->add_key($one, $primary);
}
return;
}https://stackoverflow.com/questions/13310366
复制相似问题