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

 C Discussion :

Enregistrer les micro secondes


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2005
    Messages
    202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Services à domicile

    Informations forums :
    Inscription : Septembre 2005
    Messages : 202
    Par défaut Enregistrer les micro secondes
    Bonjour à tous,
    J'ai la fonction de log suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    void logMessage(int ID_Job, char *Message)
    {
        MYSQL *conn = db_connect();
        char query[4096];
        sprintf(query, "INSERT INTO Log (ID_Job, Message, Microtime) VALUES (%s, '%s', TIME_FORMAT(NOW(), '\%f'))", ID_Job, Message);
        mysql_query(conn, query);
        mysql_close(conn);
    }
    j'y rajouté à ma requête SQL le champ Microtime. pas de problème au niveau de la compilation, mais le contenu du champ Microtime dans la table de log n'est que des "0.0000" ou "-0.000" donc pas du tout ce que j'attends.

    Existe t-il une autre méthode pour récupérer et enregistrer les micro secondes ?
    Merci du coup de main
    a+

  2. #2
    Invité(e)
    Invité(e)
    Par défaut
    Bonjour,

    Ce bout de code pose problème :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    sprintf(query, "INSERT INTO Log (ID_Job, Message, Microtime) "
    "VALUES (%s, '%s', TIME_FORMAT(NOW(), '\%f'))", ID_Job, Message);
    Le caractère '\%' ne me parait pas valide...
    Cela fonctionne-t-il mieux avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    sprintf(query, "INSERT INTO Log (ID_Job, Message, Microtime) "
    "VALUES (%s, '%s', TIME_FORMAT(NOW(), '%%f'))", ID_Job, Message);
    Pour écrire un '%', on utilise '%%', pas '\%'.

  3. #3
    Membre émérite
    Inscrit en
    Juillet 2005
    Messages
    512
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 512
    Par défaut
    Dans sprintf tu a un paramètre nommé ID_Job qui est un int je ne vois pas le %d corespondant dans la chaine de formatage.

  4. #4
    Membre éclairé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2005
    Messages
    202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Services à domicile

    Informations forums :
    Inscription : Septembre 2005
    Messages : 202
    Par défaut
    Merci pour la réponse, par contre ça me donne que des 000000 dans mon champ mais je viens de voir que c'est la faute à MySQL et non à mon code...

    Sinon pour le formatage de ID_Job, en effet, je me suis planté et je viens de corriger :-)
    Merci

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

Discussions similaires

  1. Enregistrer les infos login/password sur le client
    Par SheikYerbouti dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 07/04/2005, 09h29
  2. [DOM] comment enregistrer les modifs?
    Par noobiewan kenobi dans le forum Format d'échange (XML, JSON...)
    Réponses: 26
    Dernier message: 30/07/2004, 10h56
  3. enregistrer les requettes
    Par dsant dans le forum Débuter
    Réponses: 6
    Dernier message: 21/07/2004, 14h05
  4. recup des enregistrement les plus récents.
    Par julien_guy dans le forum Langage SQL
    Réponses: 8
    Dernier message: 29/06/2004, 11h04
  5. Réponses: 3
    Dernier message: 28/11/2003, 21h26

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