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

Bases de données Delphi Discussion :

[SQL] Faire un Distinct en incluant un champ de type Memo


Sujet :

Bases de données Delphi

  1. #21
    Modérateur
    Avatar de Rayek
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    5 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 235
    Points : 8 504
    Points
    8 504
    Par défaut
    un DbGrid ca se modifie (qui a dit Canvas )
    Sinon il y a la très bonne SmdbGrid (http://www.scalabium.com/smdbgrid.htm) ou bien d'autres composants du même style qui seront moins austère

    (Astuce: cacher le TListView avant le traitement et le réafficher ensuite Aie )...
    Et puis j'aime pas l'affichage du DBGrid, c'est beaucoup trop austère Wink
    Même si tu caches le TlistView (le mieux c'est quand même DisableComponent et EnableComponent).
    Sur 50 000 enregistrements, tu vas avoir le temps de la requete + le temps de chargement de ton listview alors qu'avec un datasource + DbGrid tu enlèves le temps de remplissage.

  2. #22
    Rédacteur
    Avatar de Pedro
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    5 411
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 5 411
    Points : 8 078
    Points
    8 078
    Par défaut
    OK je vais voir tout ça Merci Malatar

    Citation Envoyé par Malatar
    un DbGrid ca se modifie (qui a dit Canvas )
    ... Modifier un DBGrid pour qu'il ressemble à un TListView?? Quelle idée Non la BDD que j'utilise n'est pas très grosse et les temps de requête sont assez courts pour tout laisser comme ça

    PS: Félicitations pour tes 100 messages

  3. #23
    Rédacteur
    Avatar de Pedro
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    5 411
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 5 411
    Points : 8 078
    Points
    8 078
    Par défaut
    Holala
    Avec le GROUP BY comme me l'a expliqué Malatar, il remet ça!!:
    Citation Envoyé par Ce f***** message d'erreur
    Can't group on Memo or OLE Object (PROJETS.DescriptionProjet)
    Même ça, il ne vaut pas
    Evidemment, si j'enlève le PROJETS.DescriptionProjet du GROUP BY, j'ai aussi un message d'erreur (différent celui-ci) que je ne comprends pas vraiment :
    Citation Envoyé par Cet autre f**** message d'erreur
    You tried to execute a query that doesn't include the specified expression 'DescriptionProjet' as part of an aggregate function
    derechef
    Donc problème non-résolu

  4. #24
    Modérateur
    Avatar de Rayek
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    5 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 235
    Points : 8 504
    Points
    8 504
    Par défaut
    Si tu enlèves le champ DescriptionProjet il faut penser à le supprimer aussi dans le GROUP BY ou dans le resultat du select (selon où tu l'enlèves en premier )

    PS : Y a quoi quand on a 1000 messages, fiesta ???

  5. #25
    Rédacteur
    Avatar de Pedro
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    5 411
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 5 411
    Points : 8 078
    Points
    8 078
    Par défaut
    Citation Envoyé par Malatar
    Si tu enlèves le champ DescriptionProjet il faut penser à le supprimer aussi dans le GROUP BY ou dans le resultat du select (selon où tu l'enlèves en premier )
    Dans mon cas, c'est plutot l'inverse qui m'intéresse: l'afficher et ne pas l'utiliser dans le GROUP BY Mais visiblement, ça ne plait pas à Jet
    Citation Envoyé par Malatar
    PS : Y a quoi quand on a 1000 messages, fiesta ???
    Ah ben oui tiens pourquoi pas

  6. #26
    Modérateur
    Avatar de Rayek
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    5 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 235
    Points : 8 504
    Points
    8 504
    Par défaut
    Ce que je trouve bizard quand même, c'est que j'arrive à faire un distinct sur un champ mémo alors que toi non.

    La différence c'est que moi j'ai pas inner join dans ma requete.

    A tester ^^

    PS :

  7. #27
    Rédacteur
    Avatar de Pedro
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    5 411
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 5 411
    Points : 8 078
    Points
    8 078
    Par défaut
    Citation Envoyé par Malatar
    Ce que je trouve bizard quand même, c'est que j'arrive à faire un distinct sur un champ mémo alors que toi non.

    La différence c'est que moi j'ai pas inner join dans ma requete.

    A tester ^^
    Ah et qu'utilises-tu?
    Citation Envoyé par Malatar
    PS :
    Quand tu veux mon pote

  8. #28
    Modérateur
    Avatar de Rayek
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    5 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 235
    Points : 8 504
    Points
    8 504
    Par défaut
    un Select simple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Select Distinct MonChampMemo from Matable
    Sinon es tu sûr que le champ est bien un champ Mémo et pas un champ OLE dans les définitions de la base de données ?

  9. #29
    Rédacteur
    Avatar de Pedro
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    5 411
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 5 411
    Points : 8 078
    Points
    8 078
    Par défaut
    Citation Envoyé par Malatar
    un Select simple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Select Distinct MonChampMemo from Matable
    Tricheur Non je suis obligé pour ma part, de rester sur l'architecture telle quelle de la BDD
    Et avec OUTER JOIN?
    Citation Envoyé par Malatar
    Sinon es tu sûr que le champ est bien un champ Mémo et pas un champ OLE dans les définitions de la base de données ?
    Oui je suis sûr

  10. #30
    Modérateur
    Avatar de Rayek
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    5 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 235
    Points : 8 504
    Points
    8 504
    Par défaut
    Citation Envoyé par Pedro
    Citation Envoyé par Malatar
    un Select simple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Select Distinct MonChampMemo from Matable
    Tricheur Non je suis obligé pour ma part, de rester sur l'architecture telle quelle de la BDD
    Et avec OUTER JOIN?
    Citation Envoyé par Malatar
    Sinon es tu sûr que le champ est bien un champ Mémo et pas un champ OLE dans les définitions de la base de données ?
    Oui je suis sûr
    Je n'utilise jamais le Outer il n'est pas SQL-92 (si mes souvenirs sont bon) et donc non complatible avec certaine base de données. (Vu que je travail sur pas mal de base de données différentes, je SQL qu'en 92 )
    Puis bon Inner join, Left join et Rigth Join sont largemetn suffisant ^^

    Bon bin la je vois qu'une solution, c'est de faire deux requetes, une pour récupérer la liste complète sans le champ mémo et une deuxieme qui sera appeler quand une donnée de la première sera sélectionné dans un composant que tu veux (listView beurk , Grid Powa ) et qui te permettra d'afficher ton champ mémo.

  11. #31
    Rédacteur
    Avatar de Pedro
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    5 411
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 5 411
    Points : 8 078
    Points
    8 078
    Par défaut
    Citation Envoyé par Malatar
    Bon bin la je vois qu'une solution, c'est de faire deux requetes, une pour récupérer la liste complète sans le champ mémo et une deuxieme qui sera appeler quand une donnée de la première sera sélectionné dans un composant que tu veux (listView beurk , Grid Powa ) et qui te permettra d'afficher ton champ mémo.
    Non ça ne peut pas marcher avec ce que je veux faire... Je voudrais que tout s'affiche...
    Bon ben je vais rester avec mes 2 requêtes horriblement longues et mon ListView (parce que je le vaux bien )
    Merci Malatar
    (Et Franck aussi bien tentendu )

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. [2.x] Error SQL lors de l'enregistrement d'un champ de type Entity
    Par nihaoma dans le forum Symfony
    Réponses: 6
    Dernier message: 30/03/2015, 14h28
  2. [AC-2010] Comment faire un "retour chariot" dans un champ de type mémo ?
    Par Velcor dans le forum VBA Access
    Réponses: 2
    Dernier message: 05/02/2012, 13h10
  3. faire un distinct par jour sur champ contenant un time()
    Par mdr_cedrick dans le forum Langage SQL
    Réponses: 1
    Dernier message: 01/08/2008, 11h10
  4. [SQl + Access] defénir la taille d'un champ du type integer
    Par Bourak dans le forum Bases de données
    Réponses: 1
    Dernier message: 12/01/2007, 10h19
  5. Champs de type Memo
    Par talere dans le forum Langage SQL
    Réponses: 2
    Dernier message: 20/02/2006, 14h42

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