Partage
  • Partager sur Facebook
  • Partager sur Twitter

Probleme date / SQL

Sujet résolu
    1 mai 2012 à 11:31:11

    Bonjour, alors voila mon problème, je travaille donc en java sous Eclipse, je récupère une date grâce à un JSpinner, donc en format java.util.Date et je voudrais sélectionner dans ma BD tout les champs de ma table (qui possède 2 champs date) dont cette date fait partie des 2 dates de ma tables (j'espère que j'suis clair xD)
    Le problème est que soit je ne trouve pas la bonne requête à effectuer, soit le format de ma date n'est pas bon, soit j'ai des problèmes au niveau des '' "", bref je trouve rien.

    J'ai déjà chercher sur plusieurs forums mais aucune réponse ne m'a satisfait, toutes les personnes comparaient des dates de la BD elle-même, or moi je veux comparer une date récupérée du programme java.

    Si besoin d'un morceau de code ou de la BD, hesitez pas, je sais pas trop quoi mettre là ^^

    Merci d'avance pour toute réponse :)

    Edit : Voici la requête qui me pose problème, milieuPromo étant la variable extraite de mon JSpinner et converti en java.sql.Date
    instructionSQL = "select * from Article a where (a.DateDebutPromo < "+milieuPromo+") and ("+milieuPromo+" < a.DateFinPromo)";
    
    • Partager sur Facebook
    • Partager sur Twitter
      1 mai 2012 à 12:07:42

      Bonjour,

      Regarde le format exact dans lequel sont stockées tes deux dates.

      Ensuite, utilise un SimpleDateFormat pour convertir ton java.util.Date en String qui aura le même format que celui de ta base de données.
      Ensuite, tu utilise cette String pour faire ta requête.

      Comme je suis sympa, je te montre comment faire:
      Date d = new Date(); // La date que tu veux utiliser dans ta requête.
      String strDate; // La String qui sera utilisée dans ta requête et qui représentera Date d
      SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy"); // Le format à passer en paramètre est celui dans lequel est sotckée ta date dans la base de données.
      strDate = sdf.format(d);
      // Maintenant tu peux faire ta requête en utilisant strDate
      
      • Partager sur Facebook
      • Partager sur Twitter
        1 mai 2012 à 12:26:32

        Ma date est bien dans ce format là mais ça ne fonctionne pas, aucun résultat n'est trouvé et ce, quelque soit la date que j'entre, pourtant ça avait l'air bien ^^
        • Partager sur Facebook
        • Partager sur Twitter
          2 mai 2012 à 3:11:01

          Comment sont stockées tes dates dans ta base de données : timestamp ? datetime ? autre ?
          • Partager sur Facebook
          • Partager sur Twitter
            3 mai 2012 à 7:37:23

            Problème résolu, il suffisait d'entourer mes dates par des #
            • Partager sur Facebook
            • Partager sur Twitter

            Probleme date / SQL

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
            • Editeur
            • Markdown