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 :

Problèmes DateTime en c# avec base de données MysQl


Sujet :

C#

  1. #1
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2015
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2015
    Messages : 66
    Points : 83
    Points
    83
    Par défaut Problèmes DateTime en c# avec base de données MysQl
    Bonjour! je travail sur une petite application de pointage et j'ai un soucis. j'ai un fonction dénommé ChargerPointer qui à en paramètre l'identifiant de l'utilisateur qui effectue le pointage. mon soucis est que quand au chargement de cette fonction j'ai une erreur disant: "Les paramètres Year, Month et Day décrivent un DateTime qui ne peut pas être représenté."
    voici mon code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    public Pointer ChargerPointer(byte id)
            {
                try
                {
                    var cmd = new MySqlCommand("", Connection);
                    cmd.CommandText = String.Format("select po_arrivee, po_depart from pointer where em_id={0} and jr_date='{1:yyyy-MM-dd}'", id, DateTime.Today);
                    Connection.Open();
                    var reader = cmd.ExecuteReader();
                    if (reader.Read())
                    {
                        var p = new Pointer();
                        if (!DBNull.Value.Equals(reader[0]))
                            p.Arrivee = reader.GetDateTime(0);
                        if (!DBNull.Value.Equals(reader[1]))
                            p.Depart = reader.GetDateTime(1);
                        //ramène le pointer
                        Connection.Close();
                        return p;
                    }
                }
                catch (Exception e)
                {
                    Console.WriteLine(e);
                }
                Connection.Close();
                return null;      
            }
    Pourriez vous maidez SVP. j'utilise le patterm MVVM

  2. #2
    Membre du Club
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juin 2013
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Juin 2013
    Messages : 29
    Points : 40
    Points
    40
    Par défaut
    Bonsoir,
    Au lieu de :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    var cmd = new MySqlCommand("", Connection);
    cmd.CommandText = String.Format("select po_arrivee, po_depart from pointer where em_id={0} and jr_date='{1:yyyy-MM-dd}'", id, DateTime.Today);
    Essayez d'utiliser les Paramètres :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    MySqlCommand cmd = new MySqlCommand("select po_arrivee, po_depart from pointer where em_id=@Id and jr_date=@Date", Connection);
    cmd.Parameters.AddWithValue("@Id", id); 
    cmd.Parameters.AddWithValue("@Date", DateTime.Today);
    Ou :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    cmd.Parameters.Add( new MySqlParameter("@Id", MySqlDbType.Int32) { Value = id }); 
    cmd.Parameters.AddWithValue(new MySqlParameter("@Date", MySqlDbType.Datetime) { Value =  DateTime.Today });

  3. #3
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2015
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2015
    Messages : 66
    Points : 83
    Points
    83
    Par défaut
    merci à tous mon problème est résolus. voila la solution que j'ai trouvé.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
     
     public Pointer ChargerPointer(byte id)
            {
                try
                {
                    var cmd = new MySqlCommand("", Connection);
                    cmd.CommandText = String.Format("select po_arrivee, po_depart from pointer where em_id={0} and jr_date='{1:yyyy-MM-dd}'", id, DateTime.Today);
                    Connection.Open();
                    var reader = cmd.ExecuteReader();
                    if (reader.Read())
                    {
                        var p = new Pointer();
                        if (!DBNull.Value.Equals(reader[0])) 
                            p.Arrivee = DateTime.ParseExact(reader[0].ToString(),"HH:mm:ss",System.Globalization.CultureInfo.InvariantCulture);
                        if (!DBNull.Value.Equals(reader[1]))
                            p.Depart = DateTime.ParseExact(reader[1].ToString(), "HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture);
                        //ramène le pointer
                        Connection.Close();
                        return p;
                    }
                }
                catch (Exception e)
                {
                    Console.WriteLine(e);
                }
                Connection.Close();
                return null;      
            }

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

Discussions similaires

  1. [EJB3 Entity] Problème de persistence avec base de données MySQL
    Par sheridan08 dans le forum Java EE
    Réponses: 8
    Dernier message: 29/03/2013, 12h13
  2. Problème de copie d'une base de données MySQL avec PHP
    Par rheem dans le forum SQL Procédural
    Réponses: 4
    Dernier message: 15/10/2007, 14h52
  3. Demande d'aide sur la liaison avec base de données mysql
    Par almora007 dans le forum Windows Forms
    Réponses: 2
    Dernier message: 06/08/2007, 14h19
  4. Réponses: 3
    Dernier message: 11/12/2006, 19h57
  5. problème de recherche dans une base de donnée mysql
    Par Xini28 dans le forum SQL Procédural
    Réponses: 3
    Dernier message: 24/10/2005, 18h00

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