Am 14. September 2017 haben wir eine überarbeitete Fassung unserer Datenschutzrichtlinie veröffentlicht. Wenn Sie video2brain.com weiterhin nutzen, erklären Sie sich mit diesem überarbeiteten Dokument einverstanden. Bitte lesen Sie es deshalb sorgfältig durch.

Access 2016 Grundkurs

Kombinationsfeld für Fremdschlüssel

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
Bei Fremdschlüsseln, also dem Verweis auf einen Datensatz einer Nachschlagetabelle, ist es sinnvoll, im Nachschlagefeld eine Liste mit den zur Auswahl stehenden Daten anzubieten. Sehen Sie, wie Sie in der Entwurfsansicht ein Kombinationsfeld einrichten.

Transkript

Die Tabelle sieht so einiger Maßen fertig aus, aber ich müsste an dieser Stelle jetzt wissen, wie die Telefonnummer lautet. Natürlich würde man im echten Leben dann hingehen und eine Telefonanlage benutzen, die den Anrufer bzw. dessen Telefonnummer automatisch an den PC meldet, damit ich die nicht etwa abtippe und dann würde die Telefonnummer hier automatisch in die Lieferung hinein gespeichert und ich könnte nachgucken, wer es ist. Das ist aber unabhängig davon, das es technisch viel einfacher geht, hier würde ich jetzt sozusagen manuell auswählen müssen, wie die Telefonnummer ist und das gleiche bei dem Fahrer, das wäre auch mit einer automatischen Telefonanlage nicht zu klären. Ich brauche also für Nachschlagefelder Fremdschlüssel wie diese beiden. Referenzfelder sind ja Nachschlagefelder, brauche ich auch die Möglichkeit, das sinnvoll nachschlagen zu können. Ich fange mit dem Fahrer an, der ist einen Tick einfacher und zwar muss ich in die Entwurfsansicht und irgendwie in dieses Feld klicken und es gibt eine zweite Registerkarte hier unten, die heißt Nachschlagen, die sieht normalerweise wenig viel versprechend aus, weil dort steht es soll ein Textfeld angezeigt werden. Wenn ich hier per Doppelklick und zwar zweimal weiterschalte, da ist eine Liste dahinter, die dann weiter geschaltet wird, dann kann ich sagen: Ich möchte statt des Textfeldes ein Kombinationsfeld anzeigen lassen. Und ich hatte das bereits in einer Beispieldatei schon mal gemacht, könnte hier sagen, in einer Wertliste folgende Werte. Das ist aber ehrlich gesagt nicht Datenbankgerecht. Das können Sie machen, wenn sie nur zwei Werte zur Auswahl haben und die sich nie wieder ändern, sagen wir männlich, weiblich und schon wenn das dritte Geschlecht dazu kommt, was die EU inzwischen zugelassen hat, dann müssten sie wieder in den Entwurf gehen, also eigentlich sollte man Nachschlagewerte immer aus einer Tabelle holen. Oder das ist aber nur ein Umweg über eine Abfrage, sie sehen Tabelle oder Abfrage, ich hole sie Moment direkt aus der Tabelle, also die Datensatzherkunft für den Fremdschlüssel zu dem Fahrer ist eben hier die tblFahrer und ich könnte schon behaupten, ich sei fertig. Ich bin es noch nicht, aber wir können ja schon mal gucken, einmal speichern und wechseln. Dann haben sie vielleicht erstmal das Gefühl, es sei überhaupt nichts passiert, aber sobald sie jetzt hier rein klicken, gibt es eine Auswahlliste. Und die ist schon richtig, die ist nicht schön das will ich nicht behaupten, aber sie ist schon richtig, sie zeigt die sechs eindeutigen IDs der Fahrer. Sie würden natürlich auch ganz gerne den Namen sehen, dass sehe ich schon ein, das Problem besteht darin, dass sie im Moment nur die eine erste Spalte sehen, wenn ich also in den Wurf zurückwechsle, die Spalten Anzahl auf zwei erhöhe, das war es schon. Wenn sie dieses hier übrigens mal sehen, so genanntes Smart Tag, das dient nur dazu, dass diese Änderung auch in den darauf basierenden Formularen nachgearbeitet wird und vermutet, dass sie die Datenbank schon fertig haben und jetzt trotzdem Entwurf basteln, das können Sie ignorieren. Wir haben nur die Tabelle, also gucke ich da einfach nicht hin. Ich will also den Erfolg sehen, die Spaltenanzahl auf zwei speichern und wieder in die Ansicht wechseln und siehe da, hier sind jetzt zwei Spalten, die erste mit den IDs, die die zweite mit den richtigen Bezeichnungen. Nicht schön, aber schon mal besser. jetzt möcht ich natürlich ganz gerne, dass dies auch lesbar ist, auch bei den längeren Namen, die eine Variante wäre, sie machen einfach hier großzügig mehr Platz, dann ist das lesbar, aber da können sehr lange Eintragungen stehen, das ist nicht sinnvoll. Ich lasse das gerne weiterhin so kurz und wechsel zurück in den Entwurf. Dort gibt es hier eine Eigenschaft Spaltenbreite. Und der erkläre ich jetzt die erste Spalte soll, sagen wir 0, 5, in Gedanken cm, das wird gleich ergänzt und die zweite soll dann vielleicht 3 cm sein. Wenn ich das mit Return bestätige, werden nicht nur die cm ergänzt, sondern durch internen Umrechnungsfehler auch aus dem 0, 5 eine 0, 501, können Sie ignorieren, also wieder speichern und wechseln und jetzt ist die erste Spalte schon schmaler, die zweite ist aber noch nicht perfekt, denn sie sehen schon, es gibt noch ein waagerechten Rollbalken. Ich muss es hier ein bisschen breiter machen, bis es irgendwann klappt. Und das ist eigentlich schade um den Platzbedarf, deswegen erkläre ich der Tabelle, dass die Listenbreite selber nicht automatisch so ist wie die Spalte, sondern im Grunde zähl ich die beiden Werte zusammen: 3 + 0, 5 ist 4, ich weiß dass das mathematisch nicht richtig ist, aber sie haben sonst immer Ärger mit diesen Umrechnungsrundungen, also sag ich direkt 4 cm und tatsächlich können Sie sogar den letzten Spaltenwert immer weglassen, der kriegt sowieso den Rest und sie sehen, mit dem Return hat er den Rundungsfehler sowieso nochmal verschlimmert. Also die erste Spalte kriegt 0, 5 oder was auch immer und die zweite Spalte den Rest bis auf 4 cm, da müssen sie gar nicht selber rechnen. Also speichern und Ergebnis angucken. Damit haben wir jetzt hier, sie sehen schon, eine Liste, die breite ist als die Spalte auch wenn ich die Spalte deutlich schmaler mache, kriegt die jetzt einfach genug Platz und ich könnte noch einen Schritt weiter gehen und die erste Spalte sogar auf 0 setzen. Das sieht erstmal ganz erfolgreich aus, das funktioniert auch wunderbar. Das bedeutet nämlich, dass kein Benutzer sieht, was da tatsächlich an Daten hinterliegt. Ich werde also tatsächlich mal einen auswählen, völlig fiktiv im Moment. Und sie sehen, auch wenn ich die Liste gerade nicht benutze, steht da im Klartext der Name. Es ist übrigens noch ein derzeitiger Darstellungsfehler, weil es intern eine Zahl ist, wir haben weiterhin einen Long-Datentyp dahinter, wird es noch fälschlich als rechtsbündig angezeigt, wenn ich hier die Tabelle einfach nur schließe und wieder öffne. Ohne sonst was zu machen, also die Tabelle Lieferungen, sehen sie jetzt stet es auch korrekt linksbündig, das ist der Normalfall, das ist so, wie man es nach der ersten Änderung sozusagen erlebt. Jetzt glaubt ein normaler Benutzer, er würde hier einen Fahrer auswählen, nur wir als Entwickler wissen natürlich steckt da weiterhin ein Longdatenfeld welches keine Namen speichern kann. Und da ein Benutzer die Tabellen nicht sieht, aber ich als Entwickler sehe ich ganz gern, welche Zahl wirklich dahinter steckt. Deswegen werde ich hier für das Nachschlagen, achten Sie mal darauf, dass das Feld oben markiert ist, die erste Spalte nicht auf 0 setzen, sondern wieder auf 0, 5, damit ich dort wenigstens noch die Zahl sehe, also jetzt hier die Zahl nachgucken, muss ich zum Ausklappen. In Formularen hingegen, wo es genau diese Dropdown, diese Kombinationsfelder gibt, werde ich genau das machen die erste Spalte auf Null. Und damit ist so ein typisches Nachschlagefeld erstellt, ich könnte die Nummer verstecken, tue ich jetzt aber noch nicht, aber vor allem sehe ich, wen ich auswähle im Klartext.

Access 2016 Grundkurs

Erwerben Sie die notwendigen Kenntnisse, um mit Access 2016 leistungsfähige Datenbanken zu erstellen.

6 Std. 18 min (75 Videos)
Derzeit sind keine Feedbacks vorhanden...
 

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!