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

Servlets/JSP Java Discussion :

[JDBC] JSP + access


Sujet :

Servlets/JSP Java

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Août 2005
    Messages
    142
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 142
    Points : 61
    Points
    61
    Par défaut [JDBC] JSP + access
    bonjour,

    j'ai écrit une requete dans une page jsp sur une table access qui n'existe pas toujours, cette table n'est créée que sous certaine condition (je passe les détailles ce n'est pas tres important)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Statement lienElement = connexionIgm.createStatement();
    String req = "Select * from "+element;
    ResultSet reqElem = lienElement.executeQuery(req);
    if (reqElem.next()){out.println("ok");}
    j'ai l'erreur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    javax.servlet.ServletException: [Microsoft][Pilote ODBC Microsoft Access] Le moteur de base de données Microsoft Jet ne peut pas trouver la table ou la requête source 'EnCours0'. Assurez-vous qu'elle existe et qu'elle est correctement orthographiée.
    je voudrais savoir comment on fait un test pour savoir si une table existe ou non.


    [Modéré par Didier] : ajout de tag dans le titre - Les règles du forum Java

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Août 2005
    Messages
    142
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 142
    Points : 61
    Points
    61
    Par défaut
    quelqu'un a t il une idée?

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Août 2005
    Messages
    142
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 142
    Points : 61
    Points
    61
    Par défaut
    voila j'ai testé avec

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
     
    String req = "Select table_name from USER_TABLES";
    ResultSet reqElem = lienElement.executeQuery(req);
    if (reqElem.next()){out.println("la table existe");}else{out.println("la table n'existe pas");}
    j'ai le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Le moteur de base de données Microsoft Jet ne peut pas trouver la table ou la requête source 'USER_TABLES'. Assurez-vous qu'elle existe et qu'elle est correctement orthographiée.
    je ne comprends pas ce qui se passe, la requete
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Select table_name from USER_TABLES
    est sensée scanner l'ensemeble des tables existantes?????

  4. #4
    Membre régulier Avatar de Gromitou
    Profil pro
    Inscrit en
    Février 2003
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations forums :
    Inscription : Février 2003
    Messages : 98
    Points : 81
    Points
    81
    Par défaut
    Une idée comme ça : n'y aurait il pas moyen de compter tes tables, si le nombre correspond a tes tables + la facultative, alors elle est présente ?

  5. #5
    Membre expérimenté
    Avatar de zekey
    Profil pro
    Inscrit en
    Février 2005
    Messages
    1 036
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 1 036
    Points : 1 403
    Points
    1 403
    Par défaut
    Salut, la solution du try..catch n'est pas très elégante mais cela pourrait marcher non ?
    Tu ne peux pas utiliser autre chose qu'access ?
    Steve Hostettler
    est ton ami(e) et le tag aussi.

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Août 2005
    Messages
    142
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 142
    Points : 61
    Points
    61
    Par défaut
    salut,

    en fait mon projet java se sert de la base access pour communiquer avec un autre logiciel. en fonction des résultats trouvés j'alimente la base mysql de mon projet java.

    au final, la base access disparaitra mais pour le moment je suis obligée de faire avec et je n'arrive pas à écrire une requete qui me dit si la table "toto" existe ou non...

  7. #7
    Membre expérimenté
    Avatar de zekey
    Profil pro
    Inscrit en
    Février 2005
    Messages
    1 036
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 1 036
    Points : 1 403
    Points
    1 403
    Par défaut
    Et le coup du try..catch ?
    Steve Hostettler
    est ton ami(e) et le tag aussi.

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Août 2005
    Messages
    142
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 142
    Points : 61
    Points
    61
    Par défaut
    ben du fait que j'ai
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Le moteur de base de données Microsoft Jet ne peut pas trouver la table ou la requête source 'USER_TABLES'. Assurez-vous qu'elle existe et qu'elle est correctement orthographiée.
    ça me donne pas grand chose, j'arrive pas à enlever ce message d'erreur...

    Je désepère un peu...

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    50
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2002
    Messages : 50
    Points : 59
    Points
    59
    Par défaut
    Il faut utiliser un try catch comme dit ZEKEY,
    En faisant qqch du style
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    boolean exist = false;
    try{
       //requête
       exist = true;
    }catch (SQLException e){
       exist = false;
    }
    c'est pas très propre, il faudrait peut-être faire un tour du côté des metadatas,
    quand on ne connait pas le schema d'une db c'est utile,
    mais je ne connais pas cette partie! ca peut être interessant de creuser ça!

    +++
    vandoor

  10. #10
    Membre expérimenté
    Avatar de zekey
    Profil pro
    Inscrit en
    Février 2005
    Messages
    1 036
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 1 036
    Points : 1 403
    Points
    1 403
    Par défaut
    Quelque chose ne colle pas comment ca tu peux pas enlever ce méssage d'erreur ???

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
     
    try{
    String req = "Select table_name from USER_TABLES";
    ResultSet reqElem = lienElement.executeQuery(req); 
    ....
    }catch(Exception e){
    e.printStrackTrace();
    }finally{
    ....
    }
    Avec un truc comme ca tu dois pouvoir voir de quel type est l'exception précisément comme ca a la place de Exception e tu mettra l'exception précise.
    Au final tu rajoute un bloc catch(__ExceptionPrecise__ ex) mais sans printStackTrace() et la dedans tu fera ton traitement en cas de table inexistante.
    Steve Hostettler
    est ton ami(e) et le tag aussi.

  11. #11
    Membre du Club
    Profil pro
    Inscrit en
    Août 2005
    Messages
    142
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 142
    Points : 61
    Points
    61
    Par défaut
    merci zekey, c'est super ça marche.

    Tres bonne journée à tous

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

Discussions similaires

  1. Pilote JDBC d'Access
    Par Elbakin dans le forum JDBC
    Réponses: 3
    Dernier message: 14/07/2009, 20h55
  2. Problème JDBC + JSP
    Par nono35 dans le forum JDBC
    Réponses: 0
    Dernier message: 17/07/2008, 13h54
  3. [JDBC] Driver access
    Par Alwin dans le forum JDBC
    Réponses: 3
    Dernier message: 23/02/2006, 14h24
  4. [JDBC]Java access et mysql
    Par Lady_jade dans le forum JDBC
    Réponses: 9
    Dernier message: 09/09/2005, 11h11
  5. [JDBC][MS ACCESS] probleme insertion de date
    Par darius_the_first dans le forum JDBC
    Réponses: 2
    Dernier message: 10/12/2004, 18h04

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