Entity Framework: Daten archivieren

Im Artikel »Entity Framework: Gespeicherte Prozeduren« haben wir gezeigt, wie Sie gespeicherte Prozeduren für die Entitäten einer Anwendung anlegen und diese beim Ändern, Anlegen oder Löschen von Entitäten nutzen. Damit diese gespeicherten Prozeduren auch einen Mehrwert haben, zeigen wir im vorliegenden Artikel, wie Sie die gespeicherten Prozeduren so erweitern, dass Sie etwa vor dem Ändern eines Datensatzes eine Kopie dieses Datensatzes in einer für diesen Zweck vorgesehenen Tabelle anlegen, um später die Änderungen reproduzieren und wiederherstellen zu können.

Entity Framework: Gespeicherte Prozeduren

Entity Framework bietet die Möglichkeit, mit einer Datenbank zu arbeiten, die lediglich einfache Tabellen enthält. Sie könnten so sämtliche Geschäftslogik in der Anwendung halten. Manch einer mag aber vielleicht Teile der Geschäftslogik in die Datenbank überführen oder, wenn die Datenbank schon existiert, dort belassen, damit diese von verschiedenen Anwendungen aus genutzt werden kann. Ein Beispiel sind Trigger, die bei Datenänderungen automatisch ausgelöst werden, ein anderes sind gespeicherte Prozeduren, über die sie sowohl Daten abfragen als auch anlegen, ändern oder löschen können. Dieser Artikel beschäftigt sich mit den gespeicherten Prozeduren und den Möglichkeiten, die sich unter Entity Framework zu ihrer Nutzung bieten.

EF: Daten abfragen mit VB und LINQ

Unter Access waren Sie es gewöhnt, auf einfache Weise Abfragen mit der Abfrage-Entwurfsansicht zu erstellen. Ein paar Tabellen hinzufügen, die Felder auswählen, Kriterien, Sortierungen und Gruppierungen hinzufügen – fertig war die Abfrage. Gegebenenfalls haben Sie SQL-Kenntnisse und konnten SQL-Anweisungen für den Einsatz in VBA-Anweisungen von Hand schreiben. Unter VB und Entity Framework sieht das anders aus, weil wir ja nicht mehr auf Tabellen zugreifen, sondern auf Objekte. Und für die gibt es eine andere Abfragesprache, die sich direkt in den VB-Code integrieren lässt. Dieser Artikel stellt die Abfragetechnik LINQ für Visual Basic vor.
Wir haben uns bereits in einigen Artikel angesehen, wie Sie Übersichtsformulare, Detailformulare und so weiter unter WPF anlegen. Was aber, wenn Sie keine Lust haben, die Formulare unter WPF alle neu zu programmieren, obwohl Sie das schon unter Access erledigt haben? In diesem Artikel schauen wir uns an, wie die programmgesteuerten Möglichkeiten aussehen, um Formulare automatisch als WPF-Fenster oder -Seiten abzubilden. Es wird ein wenig Handarbeit übrig bleiben, aber einen großen Teil der Schritte können Sie sich damit deutlich erleichtern.

Von Access zu Entity Framework: Update 1

In Ausgabe 5/2018 haben wir in zwei Artikeln gezeigt, wie Sie das Datenmodell und die Daten einer Access-Datenbank in ein Entity Data Model und darüber in eine SQL Server-Datenbank migrieren. Im vorliegenden Artikel finden Sie eine Optimierung der dort beschriebenen Prozeduren. Im Detail geht es darum, dass in Access-Tabellen manchmal Namen in Tabellen verwendet werden, die gleichzeitig Plural und Singular der enthaltenen Entität sind – wie zum Beispiel bei tblArtikel. Das führt bei unserer automatisierten Migration früher oder später zu Problemen. Daher erweitern wir unsere Prozeduren um die notwendigen Unterscheidungen.
Im Artikel »PowerApps: Bilder in der Datenbank speichern« zeigen wir, wie Sie Fotos, die Sie mit dem Kamera-Steuerelement einer PowerApp aufgenommen haben, in der Tabelle einer Datenbank speichern. Im vorliegenden Artikel fügen wir der PowerApp eine weitere Bildschirmseite hinzu, auf der wir die Bilder dieser Datenbank anzeigen und verwalten.

PowerApps: Bilder in Datenbank speichern

Im Artikel »PowerApps: Kamera steuern« zeigen wir, wie Sie das Kamera-Steuerelement in PowerApps nutzen, um Fotos aufzunehmen und diese entweder direkt in einem Image-Steuerelement anzuzeigen oder in einer Sammlung abzulegen, deren Elemente dann in einem Katalog-Steuerelement angezeigt werden können. Beide Methoden sind nicht als dauerhafter Speicherort zu verstehen, sodass wir uns eine Alternative überlegen müssen. Für Datenbank-Entwickler liegt es nahe, die erfassten Bilddateien in einer SQL Server-Datenbank zu speichern. Wie das gelingt, zeigt der vorliegende Beitrag.

PowerApps: Kamera steuern

PowerApps sind die Lösung von Microsoft, um schnell Anwendungen für Smartphones und Co zu realisieren. Und da es kein Smartphone ohne Kamera gibt, stellt sich natürlich die Frage, ob wir PowerApps auch so programmieren können, dass wir damit Fotos aufnehmen und diese weiterverarbeiten können – etwa, indem wir diese in einer Datenbank oder in der Cloud speichern oder sogar in den Bildern des Smartphones. Der vorliegende Artikel zeigt, wie Sie eine Funktion zum Fotografieren zu Ihrer PowerApp hinzufügen und was Sie mit den aufgenommenen Bildern alles tun können.
Aktuell im Blog
Listenfeld: Reihenfolge mehrerer Einträge...

Wir haben bereits in mehreren Beiträgen beschrieben, wie Sie die individuelle Reihenfolge von... [mehr]

Diagramme mit gefilterten Daten

In Ausgabe 2/2019 haben wir in zwei Artikeln die modernen Diagramme von Access vorgestellt. Im... [mehr]

Benutzerverwaltung mit verschlüsselten...

Wenn Sie in einer Access-Anwendung Benutzer verwalten wollen, die sich per Benutzername und... [mehr]

HTML-Tabellen mit fester Kopfzeile

In den vorherigen Ausgaben von Access im Unternehmen und in der aktuellen Ausgabe arbeiten wir in... [mehr]

Flexible HTML-Tabellen mit fester Kopfzeile

Im Beitrag »HTML-Tabellen mit fester Kopfzeile« haben wir gezeigt, wie Sie Daten aus einer... [mehr]

Berechtigungen per HTML verwalten

Im Beitrag »Benutzerverwaltung mit verschlüsselten Kennwörtern« stellen wir eine Lösung vor, in... [mehr]

Benutzer und Berechtigungen ermitteln

In den Beiträgen »Benutzerverwaltung mit verschlüsselten Kennwörtern« und »Berechtigungen per... [mehr]

Zugriffsrechte mit Datenmakros

Es gibt verschiedene Möglichkeiten, auf Basis des aktuell angemeldeten Benutzers sicherzustellen,... [mehr]

Kennwörter generieren

Für den einen oder anderen Zweck möchten Sie vielleicht Kennwörter generieren oder in einer... [mehr]

Neuer Datensatz von Frontend zu Backend

Für manche Themen gibt es keine kurze, prägnante Überschrift. In diesem Fall wollen wir zeigen,... [mehr]