我正在尝试将 sqlite 设置为辅助适配器,但遇到了问题。
我收到以下消息:
Message: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'reports.reports' doesn't exist
我的表格代码是:
class Table_Reports extends Zend_Db_Table_Abstract {
protected $_name = 'reports';
protected $_id = 'report_id';
protected $_rowClass = 'Model_Report';
protected $_adapter = 'dbReports';
protected $_schema = 'reports';
如果我将 $_schema 更改为空白,那么它会尝试使用我的主 mysql 数据库。
我的应用配置是:
resources.multidb.db1.adapter = "PDO_MYSQL"
resources.multidb.db1.host = "localhost"
resources.multidb.db1.dbname = "test"
resources.multidb.db1.username = "root"
resources.multidb.db1.password = ""
resources.multidb.db1.isDefaultTableAdapter = true
resources.multidb.db2.adapter = "PDO_SQLITE"
resources.multidb.db2.dbname = ROOT "/data/reports.db"
有人知道这是怎么回事吗?
谢谢
我已经打开了性能分析,但是据我所知没有任何查询是因为我运行时发生错误:
$reports = new Table_Reports();
$reportRow = $reports->createRow();
最佳答案
尝试使用 APPLICATION_PATH 和相对路径而不是 ROOT。也许你有 open_basedir 限制或授权问题
关于php - Zend Db SQLITE 设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5274661/