1

我想使用 zend 框架在表中插入数据。我有以下表结构

在此处输入图像描述

当我尝试在此表中插入数据时,我发现错误

 Zend_Db_Table_Exception: A table must have a primary key, but none was found

当我protected $_primary ='id'在表中指定时发现错误

Primary key column(s) (id) are not columns in this table ()

我已经删除了表格并从头开始创建,但一切都是徒劳的。几个小时以来我一直在尝试解决这个问题,但没有任何解决方案。

我的模型看起来像

protected $_name = "affiliate_specialities_banners";
//protected $_primary = 'id';
protected $_adapter = null;

public function init() {
    $this->_adapter = $this->getAdapter();
}

public function addData($data) {
    try {

        $id = $this->insert($data);
    } catch (Zend_Db_Adapter_Exception $e) {

        die($e->getMessage());
    }
    return $id;
}

请有什么建议......

4

1 回答 1

2

我猜您正在使用表元数据缓存,因此 ZF 使用的是不包含主键的旧版本的表结构。删除缓存文件应该可以解决这个问题。或者,确保它连接到您在 phpMyAdmin 中查看的数据库。

于 2013-06-01T15:46:30.487 回答