Unsere Datenschutzrichtlinie wird in Kürze aktualisiert. Bitte sehen Sie sich die Vorschau an.

Office 365: Access Grundkurs

Organisation von Abfragen

Testen Sie unsere 2016 Kurse

10 Tage kostenlos!

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 die Kern der Datenbank. Und sie werden in Massen auftauchen. Das kann ich ihn jetzt schon versprechen. Im Moment gibt es nur, weil ich zwischendurch mal gebraucht habe eine einzige Abfrage, aber schon nach diesem Konzept werden gleich ganz viele entstehen, ich zeige Ihnen noch mal kurz, was darin entspannen 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üssel Spalte "kategID", sowie als zweites die Bezeichnung den Namen und sortiert nach einem speziellen Sortierfeld. Diese Abfragen setzte ich sehr automatisch ein, bei mir existiert also zu jeder Tabelle sofort eine sogenannte Abfrage. Im Ergebnis zeigt die zwei Spalten eine Identifizierung Spalte und eine hübsch 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 "NameAnzeigen" Spalte und nach der kann ich auch sorieren, also Doppelklick hier zum "Sortierung Aufsteigend", dann bin ich auch schon fertig, wir können ja einmal 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 Das sieht soweit gut aus, es kann ich also speichern und das heißt, nach dem gleichen Muster "qry" als Präfix für Query Abfrage, dann sind es die Adressen und an dem Wort "sortiert" erkenne ich, dass diese speziellen zweispaltigen Abfragen, die für Kombinationsfelder ein Fremdschlüssel benutzen kann . Dasselbe für den Fahrer, also hier "Erstellen", da muss man ihn wirklich vorher drauf klicken, das ist eher eine 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 diesen "X" hier schließen und zum 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 Lieferung 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ßerdem Primärschlüssel, der ist klar, stellt sich die Frag: Was ich denn anzeingen möchte? Ich könnte zum Beispiel als zweites Feld die Telefonnummer anzeigen, Das sieht so aus. Na ja nett, aber sie zählt mir das Datum, denn manche Telefonnummer 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 Feld Namen angeben. Dafür kann ich erstmal löschen, was hier drin steht und ich werde wieder mit Umschalt F2, Shift F2 hier dieses Zoom-Fenster 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 das 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 ganzer Name, 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 "liferAdresTelefonRef", verkettet mit und dann könnten wir das, beispielsweise in Klammern setzen oder ich schreibe "am" und dann verkettet mit "LiefrDatum" und das kann ich erst mal so angucken, also nach dem "ok", wird es hier erstmal 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 Fahrer Tabelle 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 weiter schreiben, ich vergröße es wieder, dass ich den Fahrer sehen will, also schreiben wir den vielleicht in Klammern, da hat er ein Leerzeichen davor, dann sieht es hübscher aus da kann ich jetzt auf "FahrrName" zugreifen und dann in Gänsefüßchen die Klammer wieder zumachen. 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". Das ist jetzt hier verschwindet, muss ich 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 eine andere Tabelle. Während Sie in Tabellen selber berechnete Felder nur aus den Daten der gleichen Tabelle zusammenstellen können, können Sie bei Abfragen aus mehreren Tabellen und dass einig auch der Kern einer Abfrage die Daten zusammen sammeln. 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 hier im Gründe nicht ansehen wie sie entstanden ist, ich kann mich nur darauf verlassen, das ist immer eine Primärschlüssel-Spalte 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 ihn hier zeigen zu können, dass Sie hier ausklappen und dort ändern können und dann die Sortierung einschalten, dann gucken wir jetzt mal einen Vergleich, 15.04, 29.11, 3.12, das sieht gut aus. Also können wir das nochmal speichern und schließen. Damit sind die Lieferungen fertig, jetzt fehlen noch die Portionen, es wird nach dem ähnlichen Muster ablaufen. Als 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 darauf 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 hineinziehen, auch das geht, für uns kein Problem, die verhalten sich wie Tabellen und verbinde jetzt die "LiefrID" mit der "PortiliefrIDRef". Das funktioniert nicht automatisch, weil es keine referentielle Integrität zwischen einer Abfrage und einer Tabelle gibt, nur zwischen 2 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 ganzer Name heißt, deswegen nehme ich denn mal "PortionsName", dann sind die besser zu unterscheiden, technisch geht das, aber es macht mich viel Spaß, dann immer den Tabellennamen angeben zu müssen, das ist also "ganzerName" verkettet mit, vielleicht ein Doppelpunkt in Gänsefüßchen und verkettet mit "SpeisName" anzeigen, wo das sehr lang ist, vielleicht beschränke ich mich besser auf "SpeisNameKurz" und dann gucken wir erstmal, 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 ein bereits berechnetes Feld beziehe. Da sehen Sie sogar, wenn Sie es Queek-Info anzeigen lassen, woraus es berechnet wird, aber es ist meistens effektiver hier zu gucken. Also kann ich hier die "qryPortionenSortiert" erstellen, wobei ich ihn jetzt schon sagen kann, die werde 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 Sie 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 tut es 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 dazu nehmen und das heißt die SpeiseID ist der Primärschlüssel und dann setze ich hier wieder zusammen als "ganzerName", es darf ein bisschen breiter werden, Doppelpunkt kommt ja dann und zwar "KategName" verketten mit, vielleicht Leerzeichen in Gänsefüßchen mit "SpeisNameKurz", dann kann man schon mal sehen, auch das wieder sortiert, was gemeint ist, also, das Leerzeichen sollten wir vielleicht durch den Doppelpunkt noch verbessern, damit man es erkennen kann, da steht direkt dann davor, zu welcher Kategorie das gehört, damit sind die nämlich auch nach Kategorien schon sortieren. 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 vorausgesagt, typisch für eine Datenbank, da ist dieses Suchfeld sehr praktisch, wir 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 "Query" 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.

Office 365: Access Grundkurs

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

6 Std. 18 min (75 Videos)
Derzeit sind keine Feedbacks vorhanden...
 
Hersteller:
Exklusiv für Abo-Kunden
Erscheinungsdatum:08.09.2016

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!