Announcement

Collapse
No announcement yet.

Feld aus Datatable als Nachschlagefeld

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Feld aus Datatable als Nachschlagefeld

    Ich habe eine Kundentabelle in einem typisierten Dataset, die ich mit Tableadapter und Bindingsource an eine Form gebunden habe.

    Diese Tabelle enthält u.a. das Feld Suchbegriff, über die sich der Kundendatensatz über eine angebundene Combobox schnell finden lassen soll.

    Da ich es vermeiden möchte alle Kundendatensätze beim Öffnen des Formulars zu laden (Performance) möchte ich nur die Combobox mit den Suchbegriffen (und der KundenID) füllen um dann die Daten des selectierten Kunden ins Formular zu laden (Fillby).

    Jetzt meine Frage dazu?

    1.) Macht es peformancemäßig Sinn, da ich ja sowieso einmal alle Suchbegriffe und ID's laden muß?
    Ich meine ist das Laden von nur 2Feldern schneller ales das Laden aller Felder?

    2.) Muß ich dann tatsächlich 2 Bindingsourcen (für Combobox und Formular) benutzen?

  • #2
    Zu 1. Ja. Die Menge der Daten, die die DB bereitstellen und übertragen muss, reduziert sich erheblich. Es gibt grundsätzlich die Empfehlung, nicht mit "SELECT * FROM..." zu arbeiten, sondern die gewünschten Felder aufzuführen.

    In diesem Fall ist es auch nicht problematisch, wenn du dadurch zwei DataTables hast (eine zum Nachschlagen und Auswählen, eine für weitere Informationen). Ob du wirklich so verfahren willst, hängt davon ab, ob du "regelmäßig" auch die weiteren Informationen brauchst oder nur ab und zu.

    Zu 2. Es gibt wohl Möglichkeiten, das zu umgehen; es ist auf jeden Fall praktischer, so zu verfahren. Warum auch nicht... (jede DataTable bekommt ihre BindingSource).

    Gruß Jürgen

    Comment


    • #3
      Ok, alles klar.

      Und wenn ich in einer Combobox auf den Formular Anreden für die Kunden aus der Tabelle Anreden habe und auf dem gleichen Formular nochmals die Anreden für die Ansprechpartner habe, benötige ich dafür doch nur eine Datatable, die ich mit 2 unterschiedlichen Bindingsourcen anbinde richtig?

      Comment


      • #4
        So müsste es sein (das habe ich noch nicht probiert, aber von der inneren Logik her sehe ich es auch so). Jürgen

        Comment


        • #5
          Um nochmal auf die erste Frage zurückzukommen.

          Wenn ich die Mastertabelle mit fillby fülle, muss ich dann die Detailtabellen auch mit fillby füllen oder werden dort bei einen fill automatisch (über die verknüpfung) nur die Detaildatensätze des Datensatzes aus der Mastertabelle geladen

          Comment


          • #6
            Du musst beide händisch füllen. Das DataSet darfst Du Dir nicht als "Nachbildung" der Datenbank vorstellen, sondern als eigenständige Datenstruktur in die man auch Daten aus der Datenbank laden kann.
            Würde das DataSet immer selbständig alle Daten laden würdest Du gerade bei großen Datenmengen arge Probleme bekommen, wenn er immer alles raus schaufelt

            Comment

            Working...
            X