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

 Delphi Discussion :

rôle dblookupbox et dblookupcombobox?


Sujet :

Delphi

  1. #1
    Membre régulier
    Inscrit en
    Novembre 2007
    Messages
    175
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 175
    Points : 82
    Points
    82
    Par défaut rôle dblookupbox et dblookupcombobox?
    bonsoir
    une question s'il vous plait:
    quel est le rôle de dblookupbox, et dblookupcombobox, il permettent de faire quoi exactement
    vous allez me dire tapez f1, ou une recherche sur google, je vous assure que je l'ai fais mais moi je ne comprend pas champs référencé, et blabla....
    merci

  2. #2
    Membre émérite
    Homme Profil pro
    Directeur technique
    Inscrit en
    Mai 2008
    Messages
    2 401
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2008
    Messages : 2 401
    Points : 2 310
    Points
    2 310
    Par défaut
    Salut;

    Pour ça n’y a pas mieux qu'un petit exemple. Alors imagine que tu as une table contenant des articles scolaires, et un des champs de cette table décrit la famille de l'article (cahier 32 pages ou 64 pages ou nb pages appartenant à la famille CAHIER, crayon, feutre, stylo, plume, etc.. appartenant à la famille STYLO) dans ce cas ne serait-il pas plus prudent et correct de créer une autre table pour les mises à jour des Familles des articles.

    Jusque là on ne parle pas de xxLookUpxx.

    Mais à un moment donné tu veux par le biais de ton application ajouter un article (table article) celui-ci fait partie d'une famille (table famille) alors la meilleure façon de faire est de relier les deux tables par leur champ "code Famille" puis d'y poser un xxLookUpxx dans la fiche Article. Si le composant est bien relié (Source et destination) alors il va chercher les données de la table Famille d'où le terme "LookUp = regarder dans; si j'ose dire" et l'afficher dans le composant.

    Mais réellement le composant est relié à un champ de la table Article; le plus souvent la clé primaire de la seconde table (d'ailleurs si ce n’est pas la clé primaire elle doit-être un index secondaire sinon l'établissement de la liaison échoue).

    En résumé, cette façon de procéder empêche l'utilisateur de saisir n'importe quoi puisque c'est le composant qui est chargé de présenter les données issues d'une autre table.

    Mais bon si tu ne veux pas utiliser un composant xxLookUpxx tu devrais, dans ce cas, faire tout les tests d'existence de l'enregistrement dans la table source (Famille dans notre cas).

    Autre chose, j'ai omis de parler de relation Maître-Détail mais elle est quasiment présente dans le cas d'un composant xxLookUpxx avec tous les avantages d'une détermination d'une mise à jour en cascade.

    Je ne saurais donner trop de détail sur ça mais il va falloir te pencher un peu sur tout ça pour mieux appréhender toutes ces choses.

    Bon courage.

  3. #3
    rsc
    rsc est déconnecté
    Membre éprouvé
    Avatar de rsc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2004
    Messages
    711
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 73
    Localisation : France, Côte d'Or (Bourgogne)

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

    Informations forums :
    Inscription : Juin 2004
    Messages : 711
    Points : 918
    Points
    918
    Par défaut
    DbLookupBox ? Connais pas, sous Delphi 5 en tous cas. Peut-être DbComboBox ?

    DbComboBox permet d'afficher une liste de valeurs dans laquelle on peut choisir une valeur à entrer dans un champ de BD. Les valeurs sont "en dur" dans la liste (renseignées à la conception, ou par le code à l'exécution). C'est une ComboBox avec un champ BD comme cible

    Dans DbLookupComboBox et DbLookupListBox, les valeurs de la liste sont extraites d'une autre table, dite "de référence", spécifiée via un DataSource par ListSource. ListField indique le champ de la table de référence qui doit être affiché (le "libellé"). KeyField indique le champ dont la valeur va être stockée dans le champ cible. Ce peut être le même que KeyField, mais on emploie généralement un identifiant.

  4. #4
    Membre régulier
    Inscrit en
    Novembre 2007
    Messages
    175
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 175
    Points : 82
    Points
    82
    Par défaut
    oh merci pour vos réponses, notament avec des exemples, ça marche beaucoup
    mes respects

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

Discussions similaires

  1. DBLookupComboBox dans DBGrid
    Par KThrax dans le forum Bases de données
    Réponses: 7
    Dernier message: 24/08/2004, 15h18
  2. synchronisation de deux DBLookUPComboBox
    Par frede dans le forum Bases de données
    Réponses: 2
    Dernier message: 20/02/2004, 08h32
  3. DBLookupComboBox avec listfield multiple.
    Par Harry dans le forum Bases de données
    Réponses: 6
    Dernier message: 20/02/2004, 08h24
  4. Mettre en relation les contrôles DBLookUpComboBox et DBGrid
    Par Gendarmette dans le forum Bases de données
    Réponses: 7
    Dernier message: 19/01/2004, 13h16
  5. Rôles et Privilèges
    Par PhoneKilleR dans le forum Administration
    Réponses: 10
    Dernier message: 28/10/2003, 11h24

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