我有这张桌子
CREATE TABLE IF NOT EXISTS `group` (
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
PRIMARY KEY (`id`),
UNIQUE INDEX `id_UNIQUE` (`id` ASC))
ENGINE = InnoDB;
这是工作。
INSERT INTO `group` (`id`) VALUES (NULL);
但我无法使用无脂肪
插入记录我试过了。
$group=new DB\SQL\Mapper($f3->get('DB'),'group');
$group->save();
和此。
$group=new DB\SQL\Mapper($f3->get('DB'),'group');
$group->id=null;
$group->save();
和此。
$group=new DB\SQL\Mapper($f3->get('DB'),'group');
$group->id='null';
$group->save();
但没有人可以创建记录,也没有错误。
将记录插入此表的正确方法是什么?
答案 0 :(得分:3)
Fat-Free Framework的Mapper除了主键之外没有(更改/新的)值插入记录。因此$fields
数组为空,Mapper跳过insert operation。
我不确定这是否属于bug。
以下是基于您提供的查询和F3的SQL
对象的简单解决方案:
$sql = $f3->get('DB');
$sql->exec('INSERT INTO group (id) VALUES (NULL)');