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

NetBeans Java Discussion :

mise à jour schema data base postgres avec netbeans


Sujet :

NetBeans Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    R&D
    Inscrit en
    Décembre 2013
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : R&D
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2013
    Messages : 32
    Par défaut mise à jour schema data base postgres avec netbeans
    Bonjour,

    je viens de poster la même demande d'aide sur le forum postgresql, ne sachant pas pas si mon problème viens de netbeans ou de postgres ( ou peut être les deux ?)
    Il y a peut être un post de trop ? merci de m'en excuser dans ce cas, je supprimerai celui qui n'a pas lieu d'être.

    je n'arrive pas à mettre à jour mon schéma data base dans netbeans.
    Lorsque je modifie une colonne dans ma table existante postgres, pas de problème si je "recapture le schéma data base" , mais si je rajoute une table via pgadmin, et que j'effectue le même "recapture schema data base" avec netbeans, je ne retrouve pas ma table dans mon ide.
    pouvez vous me dire si le seul "recapture schéma data base" est valide pour faire ça ,
    Peut être aussi, que c'est du coté netbeans que je dois m'orienter ,

    merci du coup de main
    daniel

  2. #2
    Membre averti
    Homme Profil pro
    R&D
    Inscrit en
    Décembre 2013
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : R&D
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2013
    Messages : 32
    Par défaut mise à jour schema data base postgres avec netbeans
    Bonjour,

    quelqu'un peut il m'aider, je souhaite simplement savoir comment faire pour mettre à jour mes tables postgres avec netbeans.
    Le "recapture schema data base de netbeans" semble n'importer que les tables déja présentes ?
    Je ne trouve pas l'info,avez vous cette info ou un lien ,
    merci bien

  3. #3
    Traductrice
    Avatar de Mishulyna
    Femme Profil pro
    Développeur Java
    Inscrit en
    Novembre 2008
    Messages
    1 505
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2008
    Messages : 1 505
    Par défaut
    Bonjour,

    Tu veux mettre à jour tes classes Java suite à la modification de certaines tables de la base de données où mettre à jour tes tables de la base de données PostgreSQL suite aux modifications apportées à tes classes Java?

    Ce n'est pas clair du tout et en plus ce n'est pas une bonne pratique de faire des modifications dans tous les sens. Normalement l'analyse doit préciser le schéma de la base de données avec les tables en question et leurs colonnes. Si tu dois ajouter des colonnes à une table ça va encore: tu modifies le code de la classe entity.java correspondante par la suite.

    Si le schéma de la base de données a changé, tu pourrais mettre le projet actuel "de côté" (dans un autre dossier) et générer un nouveau projet, avec toutes les classes et les nouvelles relations @OneToMany et @ManyToOne qui souvent changent après l'ajout de tables. Puis il faut parcourir fichier par fichier et y ajouter le code déjà développé dans le premier projet pour ne pas devoir tout recommencer. C'est assez compliqué et ça prends du temps, mais si personne ne propose une façon plus simple: il me semble que c'est tout ce que tu peux faire.


    Les petits inconvénients de ce genre nous apprennent à bien réfléchir avant de se lancer au développement d'une application...

  4. #4
    Membre averti
    Homme Profil pro
    R&D
    Inscrit en
    Décembre 2013
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : R&D
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2013
    Messages : 32
    Par défaut suite ma demande
    Bonjour Mishulyna,

    j'ai du m'absenter temporairement et viens de prendre connaissance de ton message.
    En fait, je modifie une appli, je dois y ajouter de nouvelles fonctionnalités ( je travaille avec struts).
    Pour cela je modifie l'ensemble des fichiers ( package java, jpa, tag, xml, tag,... etc) et en même temps mes tables postgres.
    Si j'ajoute une colonne à une table existante, pas de problème, mais si je veux ajouter une nouvelle table, la mise à jour du schéma database de netbeans ( recaptute schema) ne met à jour que les colonnes modifiées des tables existantes et ignore l'ajout de nouvelles tables
    Ne sachant toujours pas comment faire, je me suis mis au trigger pour "jouer" entre les tables, c'est probablement pas ça qu'il faut faire, mais par défaut .... mais j'y reviendrais dans qq semaines, le temps que j'avance

    j'ai depuis une autre difficulté mais je pense ne pas être sur le bon forum, mais peut être que vous pouvez me donner votre avis, quel forum choisir ?, je ne sais pas si cela vient des triggers ou de mon jsp ?

    J'ai un formulaire jsp qui envoi des données variables à postgres, puis des triggers mixent ces données et stockent les résultats dans mes tables que je "devrais" récupérer aussitôt:
    Mes triggers fonctionnent correctement, les calculs se font et sont bien mis à jour dans postgres

    voila mes codes version trés courte
    mon jsp ( exemple simplifié):
    <tbody>
    <tr>
    <html:javascript formName="CreateForm"
    method="strutsValidation"
    dynamicJavascript="true"
    staticJavascript="true"/>

    <html:form action="/create.do"
    method="post"
    onsubmit="disabledOnSubmit(this);return validerFormPopup(this);">

    <td>
    // j'entre ma variable de calcul nommée "variable"
    <html:text property="variable" styleId="prixVente" onkeyup="return loadSubmit();" onkeypress="return loadSubmit();"></html:text>
    // la donnée "variable" est ensuite prise en charge par un trigger qui la mixe avec d'autres données et stocke le resultat dans "resultatscalcul"
    // puis je récupere ensuite mon "resultatscalcul"
    <INPUT type="resultatscalcul" id="resultatscalcul" name="resultatscalculname" value="">
    </td>
    <td>
    //je valide mon formulaire
    <html:submit styleId="submit" onclick="return loadSubmit(); reload(this)"><bean:message key="title.button.confirm"></bean:message></html:submit>
    </td>
    </html:form>
    </tr>
    </tbody>

    Resultat : mes tables se mettent à jour avec les triggers (before + update + insert), mais je ne sais pas récupérer les "resultatscalculs""
    Je récupére toujours les anciens "resultatscalculs" sauf si je redéploie l'appli avec netbeans
    Par contre mes données "variables" sont toujours mises à jour dans mon formulaire

    Pourquoi d'un coté je récupére toujours mes données d'entrées updatées mais pas les résultats updatés aprés calculs des triggers ?
    Ou mon formulaire va "pêcher" des données inexistantes dans ma base puisque déja modifiées par les triggers ?
    Ma colonne postgres affiche des données calculs qui ne sont pas celles affichées dans mon formulaire ?

    Si je peux avoir un éclairage pour savoir vers ou me tourner
    Merci

  5. #5
    Traductrice
    Avatar de Mishulyna
    Femme Profil pro
    Développeur Java
    Inscrit en
    Novembre 2008
    Messages
    1 505
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2008
    Messages : 1 505
    Par défaut
    Citation Envoyé par danbreizh Voir le message
    J'ai un formulaire jsp qui envoi des données variables à postgres, puis des triggers mixent ces données et stockent les résultats dans mes tables que je "devrais" récupérer aussitôt:
    Mes triggers fonctionnent correctement, les calculs se font et sont bien mis à jour dans postgres
    Bonjour,

    Tu as probablement une raison pour stocker ces valeurs, sauf qu'on nous a dit au cours SGBDR qu'il ne faut jamais stocker des valeurs calculées dans la base de données...
    Il me semble plus juste d'avoir dans la dataTable une colonne genre "Prix TVAC" avec la valeur par cellule "ligneDeCommande.quantite * (ligneDeCommande.article.prixUnitare - ligneDeCommande.article.valeurDiscount) * ligneDeCommande.article.tauxTVA" ou autre formule de ce genre.

  6. #6
    Membre Expert Avatar de nathieb
    Homme Profil pro
    DevOps
    Inscrit en
    Mai 2004
    Messages
    1 058
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : DevOps
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 058
    Par défaut Explication confuse
    Bonjour,


    Tout cela est bien confus.
    Il faut savoir que quand une page jsp/html appel un insert qui enclenche un trigger, il peut y avoir une temps de latence.
    C'est à dire un temps non négligeable ou le SGBD, effectue l'opération. donc il faut attendre la fin du trigger.
    Dans ton cas cela est impossible car un trigger est une opération autonome :
    Donc soit tu rediriges var une autre page le temps que le cacul se passe
    Soit, tu gère avec une procédure stockée, et tu attends qu'elle finisse.
    Autre solution ... tu gères une transaction, bref tu codes ton calcul dans une transaction, pas dans un trigger.

    Le fait que tu es les anciennes valeurs mais que la base soit à jour en est la preuve.

    Après pour ce qui est du stockage des calculs, effectivement pour des raisons "de respect" on ne stocke pas les calculs :
    mais :
    - si c'est du décisionnel je ne suis d'accord
    - si tu veux optimiser les accès des selects c'est un plus

    En règle général, pour afficher des agrégats, tu peux utiliser des vues ou des vues matérialisées, c'est propre et simple
    à mettre en place, et la maintenance s'effectue au niveau SGBD.

    Autre détail, important, on ne gère pas un schéma avec Netbeans, rien ne vaut une bonne modélisation à la "mano",
    tu éviteras bien des éceuils, après tu fais du rétro engineering pour récupérer les classes JPA.

    Olivier

Discussions similaires

  1. Problème avec mise à jour dans la base de données
    Par emmano3h dans le forum ASP.NET MVC
    Réponses: 1
    Dernier message: 20/10/2010, 17h46
  2. Mise à jour d'une base de données avec XML ou CSV
    Par mims1664 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 3
    Dernier message: 14/05/2010, 22h42
  3. Réponses: 33
    Dernier message: 03/09/2009, 18h27
  4. [AJAX] mise à jour d'une base avec un select
    Par farooko dans le forum AJAX
    Réponses: 12
    Dernier message: 11/06/2009, 10h30
  5. Mise à jour de données temps réel avec Pentaho Data Integration
    Par jonathansauret dans le forum kettle/PDI
    Réponses: 0
    Dernier message: 29/10/2008, 15h55

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