ZF-3294: Zend_Db_Table_Select failes with ORA-00942 due to extra asterisk (*) after the FROM clause
Description
EmpModel.php : <?php require_once 'Zend/Db/Table/Abstract.php'; class EmpModel extends Zend_Db_Table_Abstract { protected $_name = 'emp'; }
The following code produces an error: $emp = new EmpModel(); $rows = $emp->fetchAll();
PHP Fatal error: Uncaught exception 'Zend_Db_Statement_Oracle_Exception' with message '942 ORA-00942: table or view does not exist SELECT "emp".* FROM *"emp"' in D:\ZendFramework\library\Zend\Db\Statement\Oracle.php:244 Stack trace:
0 D:\ZendFramework\library\Zend\Db\Statement.php(283): Zend_Db_Statement_Oracle->_execute(Array)
1 D:\ZendFramework\library\Zend\Db\Adapter\Abstract.php(405): Zend_Db_Statement->execute(Array)
2 D:\ZendFramework\library\Zend\Db\Table\Abstract.php(1184): Zend_Db_Adapter_Abstract->query(Object(Zend_Db_Table_Select))
3 D:\ZendFramework\library\Zend\Db\Table\Abstract.php(1039): Zend_Db_Table_Abstract->_fetch(Object(Zend_Db_Table_Select))
4 D:\test\application\default\controllers\IndexController.php(45): Zend_Db_Table_Abstract->fetchAll()
5 D:\ZendFramework\library\Zend\Con in D:\ZendFramework\library\Zend\Db\Statement\Oracle.php on line 244
Notice the extra asterisk after the FROM clause.
Comments
Posted by Mickael Perraud (mikaelkael) on 2008-05-24T03:05:33.000+0000
When you use Oracle, you must specify a param: autoQuoteIdentifier = false in your config or use the good case-folding.
See 10.1.1.4. Adapter Parameters, and Example 10.6. Passing the auto-quoting option to the factory
or
Posted by Wil Sinclair (wil) on 2008-06-01T15:28:13.000+0000
Please evaluate and categorize as necessary.
Posted by Ranga Chakravarthi (ranga.chakravarthi) on 2008-06-02T09:00:12.000+0000
Both suggestions worked. Thank you. The error was misleading as there was an extra asterisk.