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

Lazarus Pascal Discussion :

[SQLite] Nombre d'enregistrements d'une table entre deux dates [Lazarus]


Sujet :

Lazarus Pascal

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Retraité
    Inscrit en
    janvier 2019
    Messages
    55
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : janvier 2019
    Messages : 55
    Points : 25
    Points
    25
    Par défaut [SQLite] Nombre d'enregistrements d'une table entre deux dates
    Bonjour à tous,
    Me revoilà avec un autre problème. Je cherche le nombre d'enregistrements d'une table entre 2 dates. Le code ci-dessous fonctionne très bien avec Delphi 10.2 mais pas avec Lazarus 2.0.2. Ma BDD est sous SQlite avec les composants ZEOSLib. Tout fonctionne bien sauf cette partie :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    var d1,d2 : String;
    begin
    with Dm.ZQuery1 do
      begin
        SQL.Clear;
        d1:=FormatDateTime('mm/dd/yyyy', DatePicker1.Date);
        d2:=FormatDateTime('mm/dd/yyyy', DatePicker2.Date);
        SQL.Add ('SELECT * FROM tblContacts WHERE Jour between #' + d1 + '# AND #' + d2 + '#');
        SQL.Add ('ORDER BY Numero ASC');
        Open;
        NbContacts.Caption := Format('%d', [Dm.ZQuery1.RecordCount]);
      end;
    J'ai le message suivant :

    Nom : message.jpg
Affichages : 142
Taille : 18,7 Ko

    Merci beaucoup pour votre aide éclairée.
    Merci et bon WE à tous.

  2. #2
    Membre extrêmement actif Avatar de Jon Shannow
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    avril 2011
    Messages
    3 319
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable de service informatique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : avril 2011
    Messages : 3 319
    Points : 6 377
    Points
    6 377
    Par défaut
    Bonjour,

    Je ne sais pas si ça peut venir de là, mais tu es encore dans le With dm.zquery1 quand tu fais ton affectation au contrôle en utilisant dm.zquery1.recordcount.
    Soit tu mets uniquement recordcount, soit tu places l'instruction en dehors du With.

    Selon moi

    JS
    Au nom du pèze, du fisc et du St Estephe
    Au nom du fric, on baisse son froc...

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Retraité
    Inscrit en
    janvier 2019
    Messages
    55
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : janvier 2019
    Messages : 55
    Points : 25
    Points
    25
    Par défaut
    Non, j'ai tout essayé, j'ai mis la ligne RecordCount après le with, je l'ai même mise en commentaire, même problème. J'ai l'intuition que ce sont les 2 DatePicker qui ne sont pas compatibles avec ceux de Delphi. Et je ne vois pas d'autre composant dans la palette Lazarus.
    En tout cas merci de vous être intéressé à ce cas.
    Et j'ai aussi ailleurs dans le code un problème de non-reconnaissance du type de variable TBookMark, reconnu par Delphi.
    A suivre donc...
    BD

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Retraité
    Inscrit en
    janvier 2019
    Messages
    55
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : janvier 2019
    Messages : 55
    Points : 25
    Points
    25
    Par défaut
    Pour info, le problème de TbookMark est résolu : il suffisait de déclarer Db dans les uses de l'unité. Pour le reste, status quo...
    Bon WE à tous.
    BD

  5. #5
    Modérateur
    Avatar de tourlourou
    Homme Profil pro
    Biologiste ; Progr(amateur)
    Inscrit en
    mars 2005
    Messages
    3 417
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Biologiste ; Progr(amateur)

    Informations forums :
    Inscription : mars 2005
    Messages : 3 417
    Points : 10 040
    Points
    10 040
    Billets dans le blog
    6
    Par défaut
    N'y aurait-il pas une différence dans la façon de traiter le format date entre les 2 univers ?
    SQLite ne possède pas de format spécifique de stockage des dates : le type de colonne choisi ne pourrait-il pas jouer ?
    Ceci expliquerait pê le message d'erreur logique dans la requête.
    Delphi 5 Pro - Delphi 10.3.2 Rio Community Edition - CodeTyphon 6.90 sous Windows 10 ; CT 6.40 sous Ubuntu 18.04 (VM)
    . Ignorer la FAQ Delphi et les Cours et Tutoriels Delphi nuit gravement à notre code !

  6. #6
    Nouveau membre du Club
    Homme Profil pro
    Retraité
    Inscrit en
    janvier 2019
    Messages
    55
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : janvier 2019
    Messages : 55
    Points : 25
    Points
    25
    Par défaut
    Bonjour Tourlourou,
    Votre remarque est très intéressante. Je viens de regarder la structure de ma BDD Sqlite. Le champ Jour est en VARCHAR(10) (c-à-d DD/MM/AAAA), car effectivement le type DATE n'est pas proposé. Je précise que j'utilise le composant TDateTimePicker. J'ai essayé aussi le TMaskEdit. Rien à faire. Mais tout cela ne m'avance pas car je ne suis pas assez calé (si tant est que je le sois un peu !) pour trouver la solution. Si vous en avez une, je suis bien sûr preneur.
    Bon WE.
    BD

  7. #7
    Membre éclairé
    Homme Profil pro
    Chef de projets retraité
    Inscrit en
    juillet 2011
    Messages
    286
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Chef de projets retraité
    Secteur : Transports

    Informations forums :
    Inscription : juillet 2011
    Messages : 286
    Points : 758
    Points
    758
    Par défaut
    Bonjour,

    Citation Envoyé par f5jcg_Lulu Voir le message
    Bonjour Tourlourou,
    Je viens de regarder la structure de ma BDD Sqlite. Le champ Jour est en VARCHAR(10) (c-à-d DD/MM/AAAA), car effectivement le type DATE n'est pas proposé.
    Non, il n'est pas proposé par défaut (pas plus que varchar d'ailleurs) puisque les colonnes n'ont pas de type dans SQLITE (bien que l'on puisse leur assigner des affinités).
    Cependant SQLITE propose des fonctions de traitement des dates https://www.sqlite.org/lang_datefunc.html qui travaillent en mode ISO et permettent des traitements d'intervalles (betwwen datemin and datemax).
    Le format utilisé (DD/MM/AAAA) ne devrait pas l'être car avec lui impossible de tester les intervalles de dates ou de faire des calculs.

    Cordialement

  8. #8
    Membre régulier
    Profil pro
    Inscrit en
    juin 2005
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : juin 2005
    Messages : 66
    Points : 96
    Points
    96
    Par défaut
    Bonjour.

    J'ai des programmes utilisant des bdd sqlite avec des dates mais uniquement comme information et je n'avais jusqu'à aujourd'hui jamais fait de sélection ni de calcul avec ces dates ...

    J'ai donc fait des tests et je n'ai pas réussi à utiliser des conditions dans le select sur ces dates (quelle que soit la syntaxe). Divers tests m'ont permis de constater que la "référence dates" de sqlite est 31/12/1899 = Jour 1.

    Si je mets dans la clause sql select * from matable where madate= 43471, j'obtiens tous les enregistrements du 06/01/2019.

    avec sql : select * from matable where madate between 43471 and 43480, ceux entre les 6 et 15/1/19.

    pour obtenir la date à partir d'un datetimepicker : DaysBetween(DateTimePicker1.Date, StrToDate('30/12/1899')) .

    Christian

  9. #9
    Nouveau membre du Club
    Homme Profil pro
    Retraité
    Inscrit en
    janvier 2019
    Messages
    55
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : janvier 2019
    Messages : 55
    Points : 25
    Points
    25
    Par défaut
    Bonjour,
    Votre piste thewolf est intéressante et je vais l'exploiter pour voir où elle me mène.
    De toute façon, j'ai constaté d'autres dysfonctionnements et ce projet sous Lazarus n'est pas encore mûr mais il le sera bientôt. J'avance pas-à-pas en essayant d'éliminer les erreurs les unes après les autres. Pour le moment le projet sous Delphi ADO+Access tourne sans aucune faille. Donc à voir.
    Je vous remercie tous pour votre aide. Je reviendrai probablement. En attendant je mets la discussion en résolu.
    Cordialement

  10. #10
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique
    Inscrit en
    janvier 2007
    Messages
    11 268
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : janvier 2007
    Messages : 11 268
    Points : 29 189
    Points
    29 189
    Billets dans le blog
    29
    Par défaut
    Bonjour,

    votre erreur vient surtout du fait que vous n'utilisez pas des requêtes paramétrées (très utile pour les dates)

    essayez
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    begin
    with Dm.ZQuery1 do
      begin
        SQL.Clear;
        SQL.Add ('SELECT * FROM tblContacts WHERE Jour between :d1 AND :d2');
        SQL.Add ('ORDER BY Numero ASC');
        SQL.ParamByName('d1').asDateTime:=DatePicker1.Date;
        SQL.ParamByName('d2').asDateTime:=DatePicker2.Date;
        Open;
        NbContacts.Caption := Format('%d', [Dm.ZQuery1.RecordCount]);
      end;
    La seule chose absolue dans un monde comme le nôtre, c'est l'humour. » Albert Einstein

    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Tokyo, Rio) et peut être quelques autres
    SGBD : Firebird 2.5, 3, SQLite
    générateurs Etats : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Ubuntu, Androïd

  11. #11
    Nouveau membre du Club
    Homme Profil pro
    Retraité
    Inscrit en
    janvier 2019
    Messages
    55
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : janvier 2019
    Messages : 55
    Points : 25
    Points
    25
    Par défaut
    Ce code est-il spécifique à Lazarus ? parce que je l'ai essayé sous Delphi et les ParamByName et AsDateTime sont inconnus (soulignés en rouge, mauvais signe !).
    Dernière info : même erreur sous Lazarus, à part asDateTime reconnu.
    A suivre. Merci.

  12. #12
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique
    Inscrit en
    janvier 2007
    Messages
    11 268
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : janvier 2007
    Messages : 11 268
    Points : 29 189
    Points
    29 189
    Billets dans le blog
    29
    Par défaut
    Oh, pardon, je me suis trompé en codant un peu trop vite et à la volée du coup j'avais mis des SQL. inutiles

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    begin
    with Dm.ZQuery1 do
      begin
        Close; // nécessaire
        SQL.Clear;
        SQL.Add ('SELECT * FROM tblContacts WHERE Jour between :d1 AND :d2');
        SQL.Add ('ORDER BY Numero ASC');
        ParamByName('d1').asDateTime:=DatePicker1.Date;
        ParamByName('d2').asDateTime:=DatePicker2.Date;
        Open;
        NbContacts.Caption := Format('%d', [Dm.ZQuery1.RecordCount]);
      end;
    Ce code est-il spécifique à Lazarus ?
    absolument pas, d'ailleurs ce n'est même pas spécifique à ZEOSDBO, seul les composants ADO n'ont pas cette syntaxe.

    Je m'étonne m^me que dans les réponses précédentes personne n'ai proposé les requêtes paramétrées comme solution
    La seule chose absolue dans un monde comme le nôtre, c'est l'humour. » Albert Einstein

    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Tokyo, Rio) et peut être quelques autres
    SGBD : Firebird 2.5, 3, SQLite
    générateurs Etats : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Ubuntu, Androïd

  13. #13
    Nouveau membre du Club
    Homme Profil pro
    Retraité
    Inscrit en
    janvier 2019
    Messages
    55
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : janvier 2019
    Messages : 55
    Points : 25
    Points
    25
    Par défaut
    Oui, j'avais remarqué complètement par hasard qu'en supprimant les SQL les erreurs disparaissaient. Pour info, j'utilise les composants ZEOSDBO. Mais nouveau problème, aucun enregistrement n'est trouvé entre 2 dates, sans autre errreur. J'emploie des TDateTimePicker. Faut-il employer un autre composant de date ? Il ne reste plus qu'à résoudre ce problème pour m'affranchir définitivement de Access. Pas trop tôt !
    Encore merci.

  14. #14
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique
    Inscrit en
    janvier 2007
    Messages
    11 268
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : janvier 2007
    Messages : 11 268
    Points : 29 189
    Points
    29 189
    Billets dans le blog
    29
    Par défaut
    Citation Envoyé par f5jcg_Lulu Voir le message
    Pour info, j'utilise les composants ZEOSDBO.
    je l'ai vu rien qu'en lisant le code ZQuery1

    Mais nouveau problème, aucun enregistrement n'est trouvé entre 2 dates, sans autre errreur. J'emploie des TDateTimePicker. Faut-il employer un autre composant de date ?
    non cela devrait fonctionner maintenant chaque SGBD a ses spécificités
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    -- SQLite
    SELECT * FROM employees WHERE hire_date BETWEEN '2014-01-01' AND '2014-12-31'; 
    -- ACCESS
    SELECT * FROM logs 
    WHERE DateValue(date_added) BETWEEN  #01/10/2018#  AND  #4/10/2018#
    il faudrait que je teste le passage de paramètres dans ces cas pour en être sûr, en tout cas j'ai toujours fait ainsi avec une Base Firebird (que ce soit avec ZEOSDBO ou Firedac)
    La seule chose absolue dans un monde comme le nôtre, c'est l'humour. » Albert Einstein

    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Tokyo, Rio) et peut être quelques autres
    SGBD : Firebird 2.5, 3, SQLite
    générateurs Etats : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Ubuntu, Androïd

  15. #15
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique
    Inscrit en
    janvier 2007
    Messages
    11 268
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : janvier 2007
    Messages : 11 268
    Points : 29 189
    Points
    29 189
    Billets dans le blog
    29
    Par défaut
    Bien, j'ai pu faire un test sur une version 10.2 Starter sur laquelle j'avais installé ZEOSDBO.
    Cela fonctionne parfaitement, toutefois il y a une petite astuce il faut correctement définir les paramètres (propriété params de la requête) et définir leur Datatype à ftDate

    bien sûr cela peut aussi se faire par code mais ce n'est peut-être pas la peine que je montre comment si ?
    La seule chose absolue dans un monde comme le nôtre, c'est l'humour. » Albert Einstein

    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Tokyo, Rio) et peut être quelques autres
    SGBD : Firebird 2.5, 3, SQLite
    générateurs Etats : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Ubuntu, Androïd

  16. #16
    Nouveau membre du Club
    Homme Profil pro
    Retraité
    Inscrit en
    janvier 2019
    Messages
    55
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : janvier 2019
    Messages : 55
    Points : 25
    Points
    25
    Par défaut
    J'ai paramétré à ftDate la propriété Params du ZQuery1 mais nenni, ça ne veut pas le faire. Peut-être y-a-t-il d'autres paramètres à régler ? Voici le code actuel :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    begin
      with Dm.ZQuery1 do
      begin
        Close;
        SQL.Clear;
        SQL.Add ('SELECT * FROM tblContacts WHERE Jour between :d1 AND :d2');
        SQL.Add ('ORDER BY Numero ASC');
        ParamByName('d1').asDateTime:=DatePicker1.Date;
        ParamByName('d2').asDateTime:=DatePicker2.Date;
        Open;
        //NbContacts.Caption := Format('%d', [Dm.ZQuery1.RecordCount]);
      end;
    end;
    Quand je remplace :d1 et :d2 par des dates, j'ai des erreurs de syntaxe.
    Bon, je crois que la version Access a encore quelques jours de sursis devant elle, hélas ! J'ai beau réfléchir mais je tourne en rond.
    Merci encore de passer un peu de votre temps sur mon bazar.
    Cordialement

  17. #17
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique
    Inscrit en
    janvier 2007
    Messages
    11 268
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : janvier 2007
    Messages : 11 268
    Points : 29 189
    Points
    29 189
    Billets dans le blog
    29
    Par défaut
    À moins que cela soit un problème de données ! Si tu peux mettre la base dans un zip et joindre ce dernier à ta réponse je me ferais un plaisir de vérifier ça

    NB. même s'il s'agit de celle que j'ai déjà traitée, peut être y a-t-il des erreurs de structure


    [Edit]
    je viens de retrouver ça en relisant avec attention
    Le champ Jour est en VARCHAR(10) (c-à-d DD/MM/AAAA), car effectivement le type DATE n'est pas proposé.
    date non, mais datetime oui, stocker une date sous cette forme dans une BDD est totalement contre productif
    Faire une recherche entre deux dates quand la date est sous la forme chaine dd/mm/yyyy ne pourra pas fonctionner en passant des paramètres date, il faudrait passer des chaines et encore le résultat serait faux !


    Il faut donc transformer une date "chaine" sous forme dd/mm/aaaa en une chaine compatible SQLite soit soius la forme "aaaa-mm-dd"
    le code serait donc le suivant
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM tblContacts WHERE  date(substr(jour)||'-'||SubStr(jour)||'-'||substr(jour,1,2))   between :d1 AND :d2')

    Je suggère de créer une colonne de type datetime nommée par exemple toto
    de faire ensuite un UPDATE de la table
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    UPDATE tblcontacts set toto=date(substr(jour)||'-'||SubStr(jour)||'-'||substr(jour,1,2))
    de supprimer la colonne jour puis de renommer la colonne toto en jour
    La seule chose absolue dans un monde comme le nôtre, c'est l'humour. » Albert Einstein

    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Tokyo, Rio) et peut être quelques autres
    SGBD : Firebird 2.5, 3, SQLite
    générateurs Etats : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Ubuntu, Androïd

  18. #18
    Membre extrêmement actif Avatar de Jon Shannow
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    avril 2011
    Messages
    3 319
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable de service informatique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : avril 2011
    Messages : 3 319
    Points : 6 377
    Points
    6 377
    Par défaut
    En relisant le post initial, j'ai vu que c'était une base SQLite qui était utilisée.
    Alors la doc de SQLITE dit ceci
    2.2. Date and Time Datatype

    SQLite does not have a storage class set aside for storing dates and/or times. Instead, the built-in Date And Time Functions of SQLite are capable of storing dates and times as TEXT, REAL, or INTEGER values:

    TEXT as ISO8601 strings ("YYYY-MM-DD HH:MM:SS.SSS").
    REAL as Julian day numbers, the number of days since noon in Greenwich on November 24, 4714 B.C. according to the proleptic Gregorian calendar.
    INTEGER as Unix Time, the number of seconds since 1970-01-01 00:00:00 UTC.

    Applications can chose to store dates and times in any of these formats and freely convert between formats using the built-in date and time functions.
    Donc, à voir, comment sont stockées les dates dans la base de données, pour adapter le code d'affection des valeurs paramètres.

    JS
    Au nom du pèze, du fisc et du St Estephe
    Au nom du fric, on baisse son froc...

  19. #19
    Nouveau membre du Club
    Homme Profil pro
    Retraité
    Inscrit en
    janvier 2019
    Messages
    55
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : janvier 2019
    Messages : 55
    Points : 25
    Points
    25
    Par défaut
    Ok, SergioMaster, je joins la BDD Sqlite contacts.db dans un ZIP. Effectivement, je cherche à traiter les dates sous Sqlite comme je les traite sous Access et forcément je me plante.
    Bonne chance et merci.
    contacts.zip

  20. #20
    Membre extrêmement actif Avatar de Jon Shannow
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    avril 2011
    Messages
    3 319
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable de service informatique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : avril 2011
    Messages : 3 319
    Points : 6 377
    Points
    6 377
    Par défaut
    Tes dates sont stockées sous forme de chaine de caractères au format JJ/MM/AAAA autant dire que c'est pas le bon format pour faire des filtres sur intervalle de date.
    Au nom du pèze, du fisc et du St Estephe
    Au nom du fric, on baisse son froc...

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Réponses: 3
    Dernier message: 22/02/2016, 17h33
  2. [WB17] Filtrer une table entre deux dates
    Par LaGhyoute dans le forum WebDev
    Réponses: 1
    Dernier message: 16/06/2014, 11h35
  3. [phpMyAdmin] Comment vider une table entre deux dates ou entre deux id avec phpMyAdmin
    Par patrmich dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 6
    Dernier message: 24/05/2014, 15h48
  4. [DB] Nombre d'enregistrements d'une table
    Par Mister Nono dans le forum Bases de données
    Réponses: 26
    Dernier message: 09/05/2006, 10h51
  5. Nombre d'enregistrement dans une table MySQL
    Par tom06440 dans le forum SQL Procédural
    Réponses: 7
    Dernier message: 21/10/2005, 20h07

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