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

Zend_Db PHP Discussion :

automatisation de la création des tables sous phpmyadmin


Sujet :

Zend_Db PHP

  1. #1
    Membre du Club
    Femme Profil pro
    Ingénieur étude et développement
    Inscrit en
    Novembre 2009
    Messages
    125
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur étude et développement

    Informations forums :
    Inscription : Novembre 2009
    Messages : 125
    Points : 55
    Points
    55
    Par défaut automatisation de la création des tables sous phpmyadmin
    Bonjour,

    Je développe un module en zend Framework utilisant le SGBD MYSQL, ce module sera intégré à un cms développé par une autre équipe donc puisque ce module devrait être activé ou désactivé en fonction des besoins, j'aimerais faire une automatisation de la création des tables, donc le but est de ne pas créer les tables à la main à chaque fois que mon module sera activé.
    Par contre, je ne sais pas vraiment comment m'y prendre. Pour l’instant, j'ai exporté les données, les scripts de création de ma base de données dans un fichier dump. Et je cherche un moyen de développer un script qui permette d'automatiser cette création.
    Je viens vers vous pour me donner une piste à suivre.

    Merci de votre aide.

  2. #2
    Membre expert
    Avatar de ericd69
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2011
    Messages
    1 919
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2011
    Messages : 1 919
    Points : 3 295
    Points
    3 295
    Billets dans le blog
    1
    Par défaut
    salut,

    ça dépend où ce fait l'activation de ton module (fichier de config coté php ou valeur booléenne dans une table)...

    si tout se passe coté mysql tu crées une procédure stockée qui fait les différents trucs lors de l'activation dans phpmyadmin ou en envoyant les instruction une par une si tu exécutes ça en pure php:
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    use ta_BD;
    drop procedure activation;
    delimiter |
    create procedure activation()
    begin
    declare t,v bool default 0;
    select count(id)>0,state into t,v from config where module="nom_module";
    if not v then
    if t then
    update config set state=1 where idmodule="nom_module";
    else
    insert into config(module,state)values("nom_module",1);
    end if;
    -- liste des create table pour ton module;
    create table if not exists nom1(id int(4) not null auto_increment,primary key pk_nom1(id));
    create table if not exists nom2(id int(4) not null auto_increment,primary key pk_nom2(id));
    end if;
    end|
    delimiter ;

    je suppose ici que ta base s'appelle ta_BD et que tu as une table config(id,module,state), définissant les modules installés et que tu ne veux pas exploser les tables liées au module si elles existe déjà...

    tu appelles activation comme ça dans ta classe php qui gère les accès mysql (msqli ou pdo par exemple)

    à toi d'adapter ça à tes besoins, voilà une piste procédurale

Discussions similaires

  1. Réponses: 2
    Dernier message: 30/06/2011, 15h56
  2. Création des tables sous HSQLDB ne se réalise pas
    Par mouna- dans le forum Développement Web en Java
    Réponses: 0
    Dernier message: 16/11/2010, 17h48
  3. scripts de création des tables sous oracle 10g
    Par paolo2002 dans le forum Administration
    Réponses: 9
    Dernier message: 14/02/2008, 08h02
  4. Réponses: 4
    Dernier message: 12/03/2007, 11h48
  5. Comment relier des tables sous PHPmyAdmin
    Par BigDavid dans le forum Débuter
    Réponses: 1
    Dernier message: 26/07/2006, 14h14

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