IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ORM PHP Discussion :

Tables fantomes sur Symfony/Doctrine


Sujet :

ORM PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 5
    Par défaut Tables fantomes sur Symfony/Doctrine
    Bonjour à tous,

    Je suis en train de faire mes premiers pas avec symfony et Doctrine.

    J'ai crée un MPD à l'aide de Powerdesigner que j'ai chargé ensuite dans ma base MySQL.

    J'ai ensuite effectué les actions suivantes :
    php symfony doctrine:build-all
    Plus tard, j'ai effacé quelques tables de ma base MySQL suite à des changements sur mon MPD et quand je relance la même commande, Symfony continu à me creer ces tables et le modèle qui va avec.

    Même un php "symfony cc", n'y fait rien.

    J'imagine qu'il doit rester un fichier quelconque ou traine ma table...

    Dans le fichier \config\doctrine\schema.yml ma table n'apparait pas, par contre dans le fichier \data\sql\schema.sql elle apparait...

    Si quelqu'un peut m'expliquer ou se trouve le fichier qui contient cette vieille entrée...

    Merci d'avance.

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 42
    Par défaut
    oui, j'ai eu le même problème, il recrée les tables à partir des fichiers dans /lib/model je crois.

    sinon, efface aussi le fichier sql.

    mais je ne sais pas pourquoi.

  3. #3
    Expert confirmé
    Avatar de Michel Rotta
    Homme Profil pro
    DPO
    Inscrit en
    Septembre 2005
    Messages
    4 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : DPO
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2005
    Messages : 4 954
    Par défaut
    Tu as deux manières de créer des tables avec symfony.

    Tu utilises l'outil interne avec un fichier schema.yml qui comporte toutes les description, le cas courant et documenté que tu n'utilises pas ici.

    Tu as une base existante (crée spécialement ou pas). Ce qui semble être ton cas.

    Dans ce cas tu vas utiliser les commandes suivantes :

    pour récupérer le schema depuis ta structure :
    pour créer les objets du modèle, form et filter à partir du schéma récupéré :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    doctrine:build-model
    doctrine:build-forms
    doctrine:build-filters
    Il y a des options a compléter pour les commandes, utiliser help commande pour connaitre les options.

    la commande ":build --all" commence par générer le sql de construction de la base de donnée (ce que tu ne veux pas), injecte le schéma dans la base (ça non plus tu ne le veux pas) puis crée le modèle, forms et filters.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 6
    Dernier message: 11/06/2012, 17h20
  2. DROP table et table fantome
    Par romeo9423 dans le forum PostgreSQL
    Réponses: 5
    Dernier message: 07/02/2005, 18h46
  3. select sur plusieurs table, question sur jointure
    Par Schulman dans le forum Langage SQL
    Réponses: 7
    Dernier message: 03/09/2004, 13h54
  4. [ADO multiposte]MàJ d'1 table modifiée sur 1 autre poste
    Par joebarthib dans le forum Bases de données
    Réponses: 15
    Dernier message: 22/12/2003, 09h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo