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

Organisation von Abfragen

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
In diesem Video erstellen Sie basierend auf den Tabellen zugehörige Abfragen. Die sinnvolle Benennung hilft, auch bei vielen Abfragen den Überblick zu behalten. Der Filter im Suchfeld schränkt die angezeigten Abfragen dynamisch ein.

Transkript

Abfragen sortieren Daten, sie filtern, sie berechnet etwas neu, sie sind sozusagen der Kern der Datenbank und Sie werden in Massen auftauchen, das kann ich ihn jetzt schon versprechen. Im Moment gibt es nur, weil ich es zwischen durch mal gebraucht habe, eine einzige Abfrage. Aber schon nach diesem Konzept werden gleich ganz viele entstehen, ich zeige ihnen nochmal kurz was darin entstanden war, also per Rechtsklick auf den Namen, in die Entwurfsansicht und dann kann ich sehen, diese Abfrage basiert auf der Tabelle Kategorien, Zeigt dort die Primärschlüsselspalte kategID sowie als zweites die Bezeichnung, den Namen und sortiert nach einem speziellen sortierFeld. Diese Abfragen setze ich sehr automatisch ein, bei mir existiert also zu jeder Tabelle sofort eine sogenannte Abfrage. Im Ergebnis zeigt die zwei Spalten, eine Identifizierungsspalte und eine hübsche formulierte Spalte sozusagen. Das werde ich für die anderen jetzt auch anlegen, also basierend auf Tabelle Adressen gehe ich jetzt auf erstellen, dort muss ich allerdings nochmal neu eingeben, auf den Abfrageentwurf, dann die Adressen, das können Sie hier doppelklicken und schließen und suche mir dort jeweils die passenden Spalten raus, der Primärschlüssel ist immer die erste Spalte und wenn ich es habe, das habe ich in sehr vielen Tabellen, so eine Name-Anzeigen-Spalte und nach der kann ich auch sortieren, also Doppelklick hier zum Sortierung aufsteigend und dann bin ich auch schon fertig, wir können ja immer vorher gucken, bitte immer auf dieses Symbol klicken und nicht auf das, das ist für sogenannte Aktionsabfragen. Wir haben hier Auswahlabfragen, also die Auswahl, die Ansicht anzeigen, das sieht so weit gut aus, das kann ich also speichern und das heißt nach dem gleichen Muster qry, das Präfix für Query-Abfrage, dann sind es die Adressen und an dem Wort sortiert erkenne ich, das sind diese speziellen zweipaltigen Abfragen, die ich für Kombinationsfelder in Fremdschlüsseln benutzen kann. Dasselbe für den Fahrer, also hier erstellen, da muss man nicht wirklich vorher drauf klicken, das ist eher ne Angewohnheit, hier den Doppelklick auf den Fahrer. Und dann ID und Name, den Namen per Doppelklick sortieren und vielleicht noch einmal gucken, ob es mir gefällt. Und dann bin ich beim speichern qryFahrerSortiert. Können Sie mit Steuerung-F4 oder diesem x hier schließen und zu merken: das ist der nächste mit Erstellen Abfrageentwurf, sie sehen, das ist eine Menge Handwerk dabei, wenn ich solche standardisierten Sachen mache, die Kategorien habe ich überhaupt schon, kann ich also direkt abbrechen. Damit sind wir bei der Lieferung. Und die Tabelle Lieferungen könnte ein bisschen komplizierter werden oder sagen wir, wenn wir uns ein bisschen Luxus gönnen wollen. Da stellt sich nämlich jetzt außer dem PrimärSchlüssel, der ist klar, stellt sich die Frage, was ich denn anzeigen möchte, ich könnte zum Beispiel als zweites Feld die Telefonnummer anzeigen, das sieht so aus. Na ja, nett, aber es fehlt mir das Datum, denn manche Telefonnummern tauchen häufiger auf und vielleicht möchte ich auch den Fahrer dazu sehen, ich muss das Feld also berechnen. Und eine Berechnung bedeutet, ich muss einen neuen Feldnamen angeben. Dafür kann ich erstmal löschen, was hier drin steht und ich werde wieder mit Umschalt-F2, Schift-F2 hier dieses Zoomfenster aufrufen, weil ich dort die Schriftarten bisschen vergrößern kann damit man es besser lesen kann. Ein berechnetes Feld, also ein zusammengesetztes Feld, wie wir es hier haben ist im Prinzip wie ein berechnetes Feld in einer Tabelle, aber es muss neuer Feldname Doppelpunkt davor stehen. Bei mir heißt sowas gerne GanzerName, das ist unverbindlich und funktioniert überall. Doppelpunkt und dann kommt die eigentliche Formel und da kann man jetzt leider nicht hineinziehen da muss man wirklich tippen, also hier zum Beispiel Lieferadresse Telefon Referenz verkettet mit. Und dann könnten wir das beispielsweise in Klammern setzen oder ich schreibe am, am und dann verkettet mit Lieferdatum. Und das kann ich erstmal so angucken, also nach dem OK wird es hier erst mal nur übernommen und erst nach dem nächsten Return wird der Syntax Check ausgeführt. Und wenn ich mir das angucke, das sieht dann schon bisschen besser aus, nur dass diese Telefonnummer natürlich immer unleserlich ist, jetzt würde ich sicherheitshalber den Fahrer noch sehen wollen, es kann ja sein, dass mir das hilft an welchem Tag wer gefahren ist. Also müsste ich, um hier nicht die ID des Fahrers zu sehen, sondern dessen Namen. die Fahrertabelle zusätzlich aufnehmen. Tabelle Fahrer mit Doppelklick und schließen und weil ich referentielle Integrität habe, wird diese Verbindung direkt geklärt. Also kann ich hier direkt weiterschreiben, ich vergrößer es wieder, dass ich den Fahrer sehen will, also schreiben wir den vielleicht in Klammern. Da kommt ein Leerzeichen davor, dann sieht es hübscher aus, da kann ich jetzt auf Fahrer-Name zugreifen und dann in Gänsefüßen die Klammer wieder zu machen. Der zusammenhängende Fahrer ist durch diese Beziehung längst geklärt, ich kann also einfach so drauf zugreifen, das ganze vielleicht mal zwischendurch speichern als qryLieferungenSortiert. Dass das jetzt hier verschwindet muss sie nicht irritieren, das sind gelegentliche Anzeigefehler, das wird gleich wieder auftauchen und sie sehen, es funktioniert ja auch. Das ist jetzt eine berechnete zweite Spalte, die sich nicht nur aus mehreren Feldern dieser Tabelle zusammensetzt, sondern sogar aus denen einer anderen Tabelle. Während sie in Tabellen selber berechnete Felder nur aus den Daten dergleichen Tabelle zusammen stellen können, können Sie bei Abfragen aus mehreren Tabellen und das ist eigentlich auch der Kern einer Abfrage, die Daten zusammensammeln. Und das macht diese Formel in Verbindung hier mit referentieller Integrität und mehreren Tabellen. Damit ist diese auch fertig, von außen kann ich ihr ja im Grunde nicht ansehen, wie sie entstanden ist, ich kann mich nur darauf verlassen, dass es immer eine Primärschlüsselspalte und eine sprechende Spalte gibt. Die könnte ich jetzt zum Beispiel noch sortieren, das können wir vielleicht mal machen, erstens nach Datum und zweitens nach Telefonnummer, also hier die Anzeige ausschalten, Doppelklick für aufsteigende Sortierung. Die Fahrernummer sollte eigentlich die Telefonnummer werden, das ist aber eine günstige Gelegenheit um ihnen hier zeigen zu können, dass sie hier ausklappen und dort ändern können und dann die Sortierung einschalten und dann gucken wir jetzt mal im Vergleich: 15. 4., 29. 11., 3. 12., das sieht gut aus. Also können wir es nochmal speichern und schließen. Damit sind die Lieferungen fertig, jetzt fehlen noch die Portionen, das wird nach dem ähnlichen Muster ablaufen, also die Portionen sind wenig sprechend, ich will also die Lieferung und die Speise dazu nennen, die Speisen kann ich schon übernehmen. Also hier kann ich mich schon drauf beziehen. Die Lieferung selber möchte ich so sprechend haben wie eben, deswegen werde ich jetzt hier entweder hier oben über das Symbol oder viel leichter hier, hier eine Abfrage hinein ziehen, auch das geht, das ist kein Problem, die verhalten sich wie Tabellen und verbinde jetzt die liefrIDmit der portiliefrIDref. Das funktioniert nicht automatisch, weil es keine referentielle Integrität zwischen einer Abfrage und einer Tabelle gibt, nur zwischen zwei Tabellen. Und jetzt kann ich wieder, wie bisher die portiID als Primärschlüssel übernehmen. Und dann kann ich den Feldnamen hier zusammensetzen, der ist jetzt ein bisschen schwierig, wenn er auch GanzerName heißt, deswegen nehme ich den mal PortionsName, dann sind die besser zu unterscheiden, technisch geht das, aber es macht nicht viel Spaß, dann immer den Tabellennamen angeben zu müssen, das ist also GanzerName verkettet mit vielleicht einem Doppelpunkt. in Gänsefüßchen und verkettet mit speisNameAnzeigen. Obwohl das sehr lang ist, vielleicht beschränke ich mich besser auf speisNameKurz. Und dann gucken wir erst mal, was rauskommt: Da sehen sie jetzt, das ist sehr umfangreich aber dafür komplett informativ, ich kann sagen, an welche Nummer, an welchem Datum, von welchem Fahrer, welches Essen ohne dass ich viel Aufwand hatte, weil ich mich hier nämlich auf einen bereits berechnetes Feld beziehe. Da sehen sie sogar, wenn sie das Quickinfo anzeigen lassen, woraus es berechnet wird, aber es ist meistens effektiver hier zu gucken. Also kann ich hier die qryPortionenSortiert. erstellen, wobei ich Ihnen jetzt schon sagen kann, die werde ich gar nicht brauchen, denn die steht im Datenbankmodell hier an unterster Stelle und es gibt keine weiteren Tabellen, die sich darauf beziehen, das macht aber nichts, ich kann mich grundsätzlich darauf verlassen, dass ich diese Abfrage besitze. Die Sortierung fehlt noch, die könnte ich jetzt hier also einfach aufsteigend für PortionsName machen, das ist ein berechnetes Feld und eine Sortierung eines berechneten Feldes ist nicht wirklich zu empfehlen, aber wir haben es hier mit geringen Datenmengen zu tun, da kommt es ehrlich gesagt nicht so drauf an. Wenn sie es mit wirklich vielen Daten zu tun haben, dann sollte man das anders machen, aber so tuts das. Speichern und schließen und damit ist dann das letzte dran, nämlich die Speisen, also der Abfrageentwurf basierend auf Speisen. Und da können wir vielleicht noch die Kategorien dazunehmen. Und das heißt die SpeiseID ist der Primärschlüssel und dann setze ich hier wieder zusammen als GanzerName. Das darf ein bisschen breiter werden. Doppelpunkt kommt ja dann und zwar kategName verkettetet mit, vielleicht ein Leerzeichen in Gänsefüßchen, mit speisNameKurz. Dann kann man schon mal sehen, auch dass wieder sortiert. Was gemeint ist, also das Leerzeichen sollten wir vielleicht durch den Doppelpunkt noch verbessern, damit man es erkennen kann. Das steht direkt dann davor, zu welcher Kategorie das gehört und damit sind die nämlich auch nach Kategorien schon sortiert. Damit haben wir das soweit fertig, ich kann also auch das speichern, das ist jetzt die qrySpeisenSortiert. Und ich habe eine Sammlung von verschiedenen Abfragen. Es wird langsam voll hier, aber das ist, wie voraus gesagt, typisch für eine Datenbank. Da ist dieses Suchfeld sehr praktisch, sie können das per Rechtsklick hier einschalten, wenn es mal nicht da ist und ich kann jetzt an dieser Stelle einfach sagen, ich hätte gern alles was Speisen betrifft und sie sehen, dann reduziert sich die Anzeige sofort sehr schnell und damit ist es völlig unerheblich, wie viele Abfragen sie da haben, wenn sie die ungarische Notation einsetzen, so wie hier, können sie sogar mal eben sagen, alles was mit qryl anfängt und müssen nicht hier ein- und ausklappen, was auch alternativ ginge. Also dieses Suchfeld ist sehr wichtig, vor allem bei den Abfragen und wenn ich nachher alle sortierten Abfragen suche, dann würde ich dort jeweils Namensbestandteile suchen, was also sehr schnell geht.

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!