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

Windows Forms Discussion :

[VB.Net] Afficher les deux derniers enregistrement


Sujet :

Windows Forms

  1. #1
    Membre à l'essai
    Inscrit en
    Novembre 2005
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 41
    Points : 22
    Points
    22
    Par défaut [VB.Net] Afficher les deux derniers enregistrement
    Salut

    J'ai une table nommée "Reproduction" qui contient un champ nommé "Code_animal" qui correspond au code de l'animal et un champ "date_vêlage" qui correspond à la date de vêlage de l'animal. Dans ma table le code de l'animal peut se répeter plusieurs fois avec une date de vêlage qui lui correspond.

    Mon souci, c'est que je veux afficher les deux derniers date de vêlaes pour chaque animal.

    j'espère que j'étais bien clair

    Et merci d'avance

  2. #2
    Membre éprouvé Avatar de guitoux1
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    1 011
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 011
    Points : 1 256
    Points
    1 256
    Par défaut
    Dirige toi vers le forum BDD / SQL

  3. #3
    Membre chevronné
    Avatar de Piotrek
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 869
    Points : 1 904
    Points
    1 904
    Par défaut
    Salut

    Quelle base de donnees?

    Avec SQL Server ca donnerait:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT TOP 2 ... ORDER BY date_vêlage DESC
    PS il faut eviter les accents dans les noms de champs

  4. #4
    Membre à l'essai
    Inscrit en
    Novembre 2005
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 41
    Points : 22
    Points
    22
    Par défaut [VB.Net] Afficher les deux derniers enregistrement
    salut Piotrek

    Je trvaille avec une base de donnée Access.
    J'ai essayé le code que vous m'avez proposé, mais ça marche pas. peut etre ça marche juste avec sql server.

    Vous pouvez me proposé un code qui marche peut etre avec access.

    et merci d'avance

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Août 2005
    Messages
    98
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 98
    Points : 109
    Points
    109
    Par défaut
    tiens jette un oeil ici : http://sql.developpez.com/sqlaz/fonctions/ au cas où, mais la fonction TOP existe sous Access.
    Essaie ça peut être :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SELECT ... ORDER BY date_vêlage TOP 2 DESC

  6. #6
    Membre à l'essai
    Inscrit en
    Novembre 2005
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 41
    Points : 22
    Points
    22
    Par défaut
    salut
    en fait j'ai essayé le code suivant :

    SELECT ... ORDER BY date_vêlage TOP 2 DESC

    mais ça marche pas toujours. c'est vrai comme tu l'as dit la fonction top existe dans access, mais comment dois je faire ?

  7. #7
    Membre chevronné
    Avatar de Piotrek
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 869
    Points : 1 904
    Points
    1 904
    Par défaut
    Il te met quoi comme erreur?

  8. #8
    Membre à l'essai
    Inscrit en
    Novembre 2005
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 41
    Points : 22
    Points
    22
    Par défaut
    Pour le code il est comme suit:
    SELECT
    top 1 reproduction.date_velage,
    vache.code_animal
    FROM
    (vache INNER
    JOIN
    reproduction ON
    vache.code_animal = reproduction.code_animal)
    WHERE
    (reproduction.code_animal = ?) ORDER BY reproduction.date_velage DESC


    Il met comme Message d'erreur :

    Ereur dans la clause SELECT : expression proche de '2'.
    Clause FROM absente.
    Erreur dans la clause SELECT : expression proche de ','.
    Impossible d'analyser le texte de la requête.


    là je viens de créer un OleDbDataAdapter avec l'assistant. alors dans la fenetre "génératuers de requêtes", quand je met ce code toutes les tables que je viens d'ajouter ne s'affichent pas.
    En plus de ça, malgé ce message d'erreur quand j'execute la requete dans la fenetre "générateurs des requêtes" il s'execute.

  9. #9
    Membre à l'essai
    Inscrit en
    Novembre 2005
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 41
    Points : 22
    Points
    22
    Par défaut
    pardon, dans le code il faut mettre " TOP 2 " au lieu de " TOP 1 "

  10. #10
    Membre régulier
    Profil pro
    Inscrit en
    Août 2005
    Messages
    98
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 98
    Points : 109
    Points
    109
    Par défaut
    et dans la solution que je t'ai proposée, l'erreur est la même ?

  11. #11
    Membre à l'essai
    Inscrit en
    Novembre 2005
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 41
    Points : 22
    Points
    22
    Par défaut
    salut Vincent

    en fait la solution que tu m'as proposé ça donne rien aussi, et j'ai le message d'erreur suivant qui s'affiche :

    ORDER BY reproduction.date_velage Top 2 DESC
    et pas de résultat au contraire du code que j'écrivais en haut et qui affiche le résultat correctement dans la fenetre "generateur de requêtes " malgré le message d'erreur

  12. #12
    Membre à l'essai
    Inscrit en
    Novembre 2005
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 41
    Points : 22
    Points
    22
    Par défaut
    pardon le message d'erreur est le suivant :
    Erreur dans la clause ORDER BY.
    Impossible d'analyser le texte de la requête.
    Erreur de syntaxe (opératuer absent) dans l'expression 'reproduction.date_velage top 2'

  13. #13
    Membre régulier
    Profil pro
    Inscrit en
    Août 2005
    Messages
    98
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 98
    Points : 109
    Points
    109
    Par défaut
    c'est tout de même bizarre que la requete te renvoie des résultats tout en générant une erreur. Il te renvoie les bons résultats tout de même ?

  14. #14
    Membre régulier
    Profil pro
    Inscrit en
    Août 2005
    Messages
    98
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 98
    Points : 109
    Points
    109
    Par défaut
    je sais que ça ne correspond pas à ce que tu attends, mais au cas où, peux tu essayer ce code et nous dire s'il fonctionnne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SELECT TOP 2 reproduction.date_velage FROM reproduction ORDER BY reproduction.date_velage DESC

  15. #15
    Membre à l'essai
    Inscrit en
    Novembre 2005
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 41
    Points : 22
    Points
    22
    Par défaut
    ça marche pas toujours avec ce code.
    en fait ça donne le meme message d'erreur et il affiche le résultat correct aussi.
    c'est bizar comme meme le fait qu'il affiche les résultat correctemet alors qu'il ya un message d'erreur qui s'affiche. en plus de ça et comme j'ai avant les table ne s'affichent pas lors de l'execution de la requete.

  16. #16
    Membre chevronné
    Avatar de Piotrek
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 869
    Points : 1 904
    Points
    1 904
    Par défaut
    Effectivement c'est bizzare...

    Mets un point d'arret dans le code (en cliquant dans la marge pour surligner en rouge) relativement tot

    Execute le code pas a pas pour voir si tu ne declanche pas un autre code en meme temps

    Essaie aussi une simple selection sans le TOP pour voir si l'erreur ne proviendrait pas d'ailleurs

Discussions similaires

  1. [AC-2003] Afficher les 100 derniers enregistrements d'une table
    Par Evolvana dans le forum VBA Access
    Réponses: 3
    Dernier message: 03/08/2011, 15h47
  2. Afficher les 10 derniers enregistrements
    Par dakota77 dans le forum Langage SQL
    Réponses: 3
    Dernier message: 25/04/2011, 11h24
  3. Réponses: 6
    Dernier message: 10/11/2010, 13h04
  4. [Access] Afficher les deux derniers enregistrement
    Par badnane2 dans le forum Access
    Réponses: 10
    Dernier message: 08/07/2006, 14h02
  5. [MySQL] Afficher les 3 derniers enregistrements
    Par Wu dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 02/02/2006, 11h04

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