soukainaelaz
Messages postés5Date d'inscriptionmardi 24 juillet 2012StatutMembreDernière intervention 1 juin 2013
-
26 juil. 2012 à 17:35
Utilisateur anonyme -
26 juil. 2012 à 22:11
Bonjour,
dans le cadre de mon stage je dois réaliser une application en java qui permet de faire une connexion avec une base de données en access et qui permet la consultation des différentes rubriques de la base au travers d'une interface.
Avec mes modestes connaissances en java & bases de données j'ai fais ceci, mais apparemment il y a une erreur qlq part ,la connexion avec la BD n'est pas entretenue!
si qlq'un pourrai m'aider j'en serai reconnaissante.
mais apparemment il y a une erreur qlq part ,la connexion avec la BD n'est pas entretenue
L'interface présente un tableau identique à celui dans la BD qui normalement une fois l'interface ouverte doit être rempli mais c'est pas la cas !!
Si j'ai bien compris, tu as une IHM avec un tableau qui se remplit avec les données de la BDD en temps normal, sauf que là ce n'est pas le cas. C'est bien ça ?
Je voudrais savoir ce qui te fait dire que c'est la connexion à la BDD qui n'est plus maintenue. Car oui, ton problème peut venir de ça, mais peut également provenir d'une requête SQL foireuse ou encore d'une méthode qui ne fait pas son boulot (comme remplir ton fameux tableau).
Ah j'ai oublié de dire que aucun msg d'erreur n'est declenché
Ça c'est un petit peu étonnant. As-tu des warnings par exemple dans ton IDE ? Sinon, est-ce que tu as des choses du genre try { /* ton code */ } catch (Exception e){} ? Car si tu attrapes un exception (une erreur) avec ce bloc, et que tu n'affiches rien dans le catch, tu n'auras aucun message d'erreur.
Au fait, tu as fait générer ce code ? Où tu l'as mélangé en faisant ton post ? Car là, il est vraiment immonde, et encore je pèse mes mots.
--
Pylouq Heureux sont ceux qui lisent le Réglement, ils ne finiront peut-être pas au bûcher.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Je viens de trouver ! Au fait j'avais zappé des morceaux de codes car j'avais lu trop vite. Bon, le problème vient du fait que tu as mal conçu ton code, surtout dans la gestion des exceptions.
Dans ta méthode afficher, tu exécutes un requête SQL qui est bel et bien foireuse. Tu cherches à exécuter dans Rs=st.executeQuery("Select* Form stg"); la requête Select* Form stg. Tu as inversé deux lettres, cela devrait être select * from stg ! Du coup, tu dois avoir normalement (sinon ça craint pas mal) une exception de levée du type SQLException, ou un truc comme ça. Or, chose que je n'avais pas vu, tu as utilisé un try/catch dans ta méthode qui récupère tous les types d'exceptions, et qui affiche une pop-up qui indique qu'il y a un problème de connexion. Or, ce n'est absolument pas le cas. Tu as donc cru que le problème venait d'une connexion à la BDD qui n'était pas maintenue, et il y avait bien un message d'erreur affiché !!
Bref faire un try/catch (Exception e) n'est pas une bonne idée. Car tu attrapes toutes les exceptions sans distinction, et tu appliques le même traitement pour chaque type, ce qui ne rime à rien. Donc au lieu de faire un gros bloc comme tu as fait, fais plusieurs catch sous ton try qui gèrent chacun un type d'exception bien donné.
Corrige tout ça et redis nous ce qu'il en est stp.
--
Pylouq Heureux sont ceux qui lisent le Réglement, ils ne finiront peut-être pas au bûcher.