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

Langage SQL Discussion :

Problème de select sur une date (DATETIME....)


Sujet :

Langage SQL

  1. #1
    Membre à l'essai
    Inscrit en
    Avril 2005
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 47
    Points : 20
    Points
    20
    Par défaut Problème de select sur une date (DATETIME....)
    Bonjour tout le monde, j'explique mon problème :
    J'ai deux tables :

    Table Mesure :
    Id_mesure | Id_sonde | Date | Heure | Date_heure
    Table Performances :
    Id_mesure | Mesure_cpu | Mesure_ram | Size_ram | Mesure_process | Mesure_ Size_hdd
    Je voudrai faire un Update sur la table Performances pour insérer la valeur Mesur_cpu selon une condition bien particulière : en fonction de la date de la mesure effectuée (date qui se trouve dans la table Mesure...)

    Ne sachant pas si on peut faire un Update avec une jointure à l'intérieur
    J'ai décidé de faire un Select, de récupérer le résultat et de le mettre dans mon Update (je code en Java sur une base de données MySQL...)

    Je vous marque donc les requêtes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    String RechercheId="SELECT Id_mesure FROM mesure WHERE Date like "+Date12+" and Heure like "+Date22+" ";
    avec Date12 et Date22 les dates contenues dans les champs Date et Heure, Date12 = 2005-04-17 et Date22 = 14:24:16

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    String InsertCPU="UPDATE performances p SET p.Mesure_cpu="+valueCPU2+" WHERE Id_mesure="+IdTrouve+"";
    J'ai un message d'erreur sur la recherche de l'heure...
    Message SQLException: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near ':24:16' at line 1
    J'ai essayé de faire une recherche sur le champs Date_heure qui est au format 0000-00-00 00:00:00, mais ça me fait l'erreur suivante

    Message SQLException: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '14:24:16' at line 1
    ...

  2. #2
    BiM
    BiM est déconnecté
    Expert éminent sénior
    Avatar de BiM
    Femme Profil pro
    Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
    Inscrit en
    Janvier 2005
    Messages
    7 796
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

    Informations forums :
    Inscription : Janvier 2005
    Messages : 7 796
    Points : 10 765
    Points
    10 765
    Par défaut
    J'ai beau lire et relire et je ne trouve pas ou tu modifie le champs Date_Heure, je veux dire quand tu inseres une valeur par exemple...

  3. #3
    Membre à l'essai
    Inscrit en
    Avril 2005
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 47
    Points : 20
    Points
    20
    Par défaut
    Citation Envoyé par BiMouXeTTe
    J'ai beau lire et relire et je ne trouve pas ou tu modifie le champs Date_Heure, je veux dire quand tu inseres une valeur par exemple...
    Les champs : Date_Heure (et aussi Date et Heure par la même occasion sont insérés par une autre partie du code, que je dois encore développée..... )

    Je les ai rentré manuellement via phpMyAdmin (ce que j'utilise pour administrer MySQL....).

    Le truc bizare, c'est que si je limite mon SELECT à la recherche de la date :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    String RechercheId="SELECT Id_mesure FROM mesure WHERE Date like "+Date12+"
    Ca fonctionne (mais ça n'est plus suffisant puisque je n'ai plus l'heure )
    Pourtant les champs sont correctement renseignés et correctement formatés aussi.
    Alors je ne comprends pas

  4. #4
    BiM
    BiM est déconnecté
    Expert éminent sénior
    Avatar de BiM
    Femme Profil pro
    Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
    Inscrit en
    Janvier 2005
    Messages
    7 796
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

    Informations forums :
    Inscription : Janvier 2005
    Messages : 7 796
    Points : 10 765
    Points
    10 765
    Par défaut
    Citation Envoyé par zeldoi5
    mais ça n'est plus suffisant puisque je n'ai plus l'heure
    Comment ca ?

    A l'affichage c'est normal puisque tu ne demande que ID_mesure !

  5. #5
    Membre à l'essai
    Inscrit en
    Avril 2005
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 47
    Points : 20
    Points
    20
    Par défaut
    Citation Envoyé par BiMouXeTTe
    Citation Envoyé par zeldoi5
    mais ça n'est plus suffisant puisque je n'ai plus l'heure
    Comment ca ?

    A l'affichage c'est normal puisque tu ne demande que ID_mesure !
    Oui mais je ne fais plus de selection selon le champs Heure (ce qui est ptimordial....)
    je ne comprends pas pourquoi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    String RechercheId="SELECT Id_mesure FROM mesure WHERE Date like "+Date12+" and Heure like "+Date22+" ";
    la recherche sur Heure like +Date22 ne marche pas...
    Surtou que si j'execute la requête sur phpMyAdmin, ça marche....
    Je comprends plus rien.......

  6. #6
    BiM
    BiM est déconnecté
    Expert éminent sénior
    Avatar de BiM
    Femme Profil pro
    Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
    Inscrit en
    Janvier 2005
    Messages
    7 796
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

    Informations forums :
    Inscription : Janvier 2005
    Messages : 7 796
    Points : 10 765
    Points
    10 765
    Par défaut
    Peut etre qu'il manque des : '

  7. #7
    Membre à l'essai
    Inscrit en
    Avril 2005
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 47
    Points : 20
    Points
    20
    Par défaut
    Citation Envoyé par BiMouXeTTe
    Peut etre qu'il manque des : '
    Trop cool, grace à toi ça marche, j'avais essayé beaucoup de choses mais pas ça!!

    Fallait faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    String RechercheId="SELECT Id_mesure FROM mesure WHERE Date like "+Date12+" and Heure like '"+Date22+"' ";
    Pour faire une recherche sur la date, aps besoin de " ou de ', mais pour une recherche sur un champs de type Time il faut obligatoirement des '.
    Encore fallait il le trouver....

    Merci!!!!!

  8. #8
    BiM
    BiM est déconnecté
    Expert éminent sénior
    Avatar de BiM
    Femme Profil pro
    Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
    Inscrit en
    Janvier 2005
    Messages
    7 796
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

    Informations forums :
    Inscription : Janvier 2005
    Messages : 7 796
    Points : 10 765
    Points
    10 765
    Par défaut
    Fais attention, sur certains SGBD comme Oracle il faut des ' partout sauf pour les types numériques !

    Quand tu programmes en Java essaye de mettre \' a chaque fois plutot que ' tout court.

    De rien, bonne journée !

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

Discussions similaires

  1. select sur une date
    Par breizh76 dans le forum SQL
    Réponses: 23
    Dernier message: 01/02/2010, 18h15
  2. Problème de flitre sur une date pour la création d'un recordset
    Par psykodumarteau dans le forum VBA Access
    Réponses: 2
    Dernier message: 03/09/2008, 08h11
  3. [CR 8.5] Problème EXPERT SELECTION sur une formule
    Par ALINE85 dans le forum Formules
    Réponses: 2
    Dernier message: 14/02/2008, 14h02
  4. Problème de lenteur due à une selection sur une date [CR 8.5]
    Par Fredifredo dans le forum SAP Crystal Reports
    Réponses: 15
    Dernier message: 13/02/2007, 17h10
  5. select sur une date de plus de x jour
    Par Zen_Fou dans le forum Requêtes
    Réponses: 4
    Dernier message: 03/04/2006, 17h14

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