2010-08-03 7 views
9

Je suis occupé avec Doctrine2, mais je n'arrive pas à le faire fonctionner.Configuration de Doctrine 2 avec MySQL

Tout fonctionne correctement avec sqlite. Mais quand j'essaye de changer la base de données dans la démo de sandbox à MySQL je deviens confus. C'est ce que j'ai fait. J'ai créé une base de données, changé le tableau connectionOptions à:

$connectionOptions = array(
    'driver' => 'pdo_mysql', 
    'path' => __DIR__.'/mysql.php' 
); 

l'entrée « path » existe et ressemble à ceci:

$connectionParams = array(
    'dbname' => 'db_test', 
    'user' => 'test', 
    'password' => 'p4ssw0rd', 
    'host' => 'localhost', 
    'driver' => 'pdo_mysql', 
); 

Quand je lance la commande pour créer la base de données:

php doctrine orm:schema-tool:create 

Ce qui me donne l'erreur:

no database selected 

Semble être un message clair. Mais comment puis-je changer le nom de base de données, car celui spécifié dans mysql.php (voir ci-dessus) ne fonctionne pas et devrait être celui qu'il utilise! Je l'ai cherché pendant des heures, mais je ne le trouve nulle part.

+0

Pouvez-vous nous montrer un peu plus du code, un peu difficile à diagnostiquer avec seulement deux lignes. Merci! –

Répondre

10

S'agit-il du bac à sable Doctrine 2? Cela a fonctionné pour moi:

// sandbox/bootstrap.php 

$connectionOptions = array(
    'driver' => 'pdo_mysql', 
    'host'  => '127.0.0.1', 
    'dbname' => 'your_database_name', 
    'user'  => 'username', 
    'password' => 'password' 
); 

$em = EntityManager::create($connectionOptions, $config); 
+1

J'ai jeté un coup d'oeil et c'est la solution! Merci beaucoup ... –

+0

Dans cette réponse, 'chemin' devrait être changé en 'hôte' pour travailler avec les dernières versions de la doctrine. –

+0

Mis à jour. Merci. Je pense que Doctrine était encore bêta quand cette question a été soulevée à l'origine. –

-1

Le code de livre de cuisine est également disponible pour le téléchargement. Voir here pour les détails. Regardez cli-config.php après l'avoir téléchargé.

+0

Ce lien est maintenant derrière un blog privé. –

+0

@Kevin Sedgley Oui, je n'ai pas bricolé avec Doctrine depuis longtemps, et cette entrée date de 2010. Donc maintenant, les informations dans le lien peuvent être obsolètes. Vous pouvez consulter https://github.com/kkruecke/doctrine-2-cookbook –

Questions connexes