J'ai une base de données dans Postgresql 9.0 et j'essaie d'utiliser Doctrine ORM 1.2 pour générer des modèles à partir de DB.Doctrine et Postgresql, Générer des modèles à partir de DB Problème
Voici mon code:
<?php
require_once 'Doctrine.php';
spl_autoload_register(array('Doctrine', 'autoload'));
spl_autoload_register(array('Doctrine_Core', 'modelsAutoload'));
$manager = Doctrine_Manager::getInstance();
$conn = Doctrine_Manager::connection('pgsql://postgres:[email protected]/erp','doctrine');
$conn->setAttribute(Doctrine_Core::ATTR_PORTABILITY, Doctrine_Core::PORTABILITY_FIX_CASE | PORTABILITY_RTM);
$conn->setAttribute(Doctrine_Core::ATTR_QUOTE_IDENTIFIER, true);
$manager->setAttribute(Doctrine_Core::ATTR_AUTO_ACCESSOR_OVERRIDE, true);
Doctrine_Core::loadModels('../application/models');
Doctrine_Core::generateModelsFromDb('../application/models', array('doctrine'), array('generateTableClasses' => true));
?>
et quand je lance la page, je reçois cette erreur:
Fatal error: Uncaught exception 'Doctrine_Connection_Pgsql_Exception' with message 'SQLSTATE[42P01]: Undefined table: 7 ERROR: missing FROM-clause entry for table "t" LINE 6: ... t.typtype ... ^. Failing Query: "SELECT ordinal_position as attnum, column_name as field, udt_name as type, data_type as complete_type, t.typtype AS typtype, is_nullable as isnotnull, column_default as default, (SELECT 't' in D:\Doctrine-1.2.3\Doctrine-1.2.3\Doctrine\Connection.php on line 1082
Il vaut la peine de mentionner, ce code fonctionne parfaitement pour MySQL (en ayant mysql: // ... dans la connexion decurse), mais j'ai du mal à le faire fonctionner avec postgresql 9.0.
Une idée?
yeppy il y avait une faute de frappe dans le fichier source !!! et je suis étonné que j'ai téléchargé la source du SVN et que la faute de frappe existe toujours! Je me suis retiré moi-même! mais thx de toute façon – Pooria