Apps mit einem intelligenten Datenbank-Assistenten erstellen
Lösungen, die auf Daten basieren, wie Datenbanken und Unternehmensanwendungen, sind auf eine Verbindung zu und eine Interaktion mit Backend-Datenbanken angewiesen. Backend-relationale Datenbanken speichern Daten jedoch in Tabellen, die komplexe Datenbeziehungen widerspiegeln. Dies bietet zahlreiche Vorteile für ein effektives Datenmanagement und die Wahrung der Datenintegrität, kann aber es erschweren, auf die darin gespeicherten Daten auf neue Weise zuzugreifen und mit ihnen zu arbeiten. App-Entwickler müssen ein umfassendes Verständnis der Prinzipien des Datenbankdesigns und der SQL-Abfragesprache besitzen, um überhaupt erst damit beginnen zu können.
Im Gegensatz dazu stellen Beziehungen in realen Daten häufig Eltern-Kind-Beziehungen oder sogar komplexere hierarchische Strukturen dar. Die Arbeit mit hierarchischen Daten, bei denen Beziehungen in einer Baumstruktur visualisiert werden können, kann daher wesentlich einfacher und flexibler sein, was zu einer schnelleren Entwicklung führt. Dieser Ansatz ist zudem für Entwickler ohne umfassende SQL-Kenntnisse besser zugänglich.
Um die Entwicklung von Anwendungen, die sich mit den relationalen Datenbanken verbinden, die in modernen Unternehmen allgegenwärtig sind, einfacher, schneller und für eine größere Anzahl von Entwicklern zugänglich zu machen, verfolgt Altova MobileTogether einen völlig neuen Ansatz. Sein visueller Datenbank-Assistent ermöglicht es Entwicklern, problemlos eine Abfrage zu erstellen, die hierarchische Daten zurückgibt, mit diesen Daten in der Anwendung zu arbeiten und die Daten anschließend einfach in hierarchischer Form zu speichern. Dabei kümmert sich MobileTogether um die Normalisierung der Daten und schreibt sie zurück in die entsprechenden verknüpften Tabellen. Sehen wir uns an, wie das funktioniert.

Die Arbeit mit hierarchischen Daten
Relationale Datenbanken organisieren Daten in Zeilen und Spalten, die zusammen eine Tabelle bilden. Die Daten sind typischerweise über mehrere Tabellen strukturiert, und die Beziehungen zwischen den Daten werden durch Primär- und Fremdschlüssel angezeigt, die die Eindeutigkeit gewährleisten und gleichzeitig komplexe Verbindungen ermöglichen. Obwohl das relationale Modell zahlreiche Vorteile und Effizienzen bietet, eignet es sich nicht für bestimmte Anwendungen. Beispielsweise erfordert die Anzeige von Daten aus zwei Tabellen in einem einzigen Formular – und die Möglichkeit, diese Daten zu bearbeiten – zwei separate Datenbankabfragen und eine beträchtliche Menge an manuell geschriebenem SQL-Code. Das Speichern von Daten aus einem solchen Formular zurück in die Datenbank ist noch komplizierter. Neben dem Zeitaufwand erfordert dies, dass App-Entwickler über fundierte SQL-Kenntnisse verfügen, zusätzlich zu ihren anderen Qualifikationen, was eine erhebliche Herausforderung darstellt und die derzeitige Knappheit an qualifizierten Software- und App-Entwicklern noch verstärkt.
Visuelle, Low-Code-Tools wie MobileTogether arbeiten im Hintergrund, um die Entwicklung von Anwendungen, die sich mit Backend-Daten verbinden, so einfach wie möglich zu gestalten. Dadurch können Entwickler sich auf das Design und die Funktionalität ihrer Anwendungen konzentrieren, und vor allem auf die Benutzererfahrung, anstatt sich mit dem Schreiben komplexer SQL-Anweisungen aufhalten zu müssen. (Eine kurze Anmerkung: Obwohl dieser Artikel sich auf datenbankgesteuerte Anwendungen konzentriert, kann MobileTogether auch mit Datenquellen in anderen Formaten wie XML, JSON, HTML, SOAP und REST usw. verbunden werden. Legacy-Datenquellen (Excel, EDI, Text usw.) können einfach über die MapForce Server-Integration verbunden werden.)
Unabhängig von der Datenquelle stellt MobileTogether Backend-Daten in einer hierarchischen Baumstruktur dar, die es Entwicklern ermöglicht, Beziehungen sofort zu verstehen und Elemente nach Bedarf zu bearbeiten – unabhängig davon, wie sie in der Backend-Datenbank gespeichert sind – während sie die Funktionen und Aktionen der App definieren.
Datenbank-Assistent: Importieren der Datenbankstruktur
Wenn Sie Ihre App zum ersten Mal mit dem Datenspeicher in MobileTogether verbinden, können Sie aus einer großen Auswahl an unterstützten relationalen Datenbanken und Verbindungsmöglichkeiten wählen.
Der Verbindungsassistent führt Sie Schritt für Schritt durch den Prozess.

Sobald die Verbindung hergestellt ist, zeigt das Dialogfenster "Seite hinzufügen" eine Liste der verfügbaren Tabellen an. Hier wird eine relativ einfache Backend-Datenbank verwendet, um eine App für einen Buchkatalog zu erstellen.

Um die für die App benötigten Spalten auszuwählen, ermöglicht der visuelle SQL-Statement-Builder im Datenbank-Assistenten es, eine SELECT-Anweisung einfach per Mausklick zu erstellen, was wesentlich schneller ist, als die SQL-Anweisungen manuell zu schreiben. Wenn die Tabelle "Autoren" ausgewählt ist, enthält der Dialog anfänglich standardmäßig eine SQL-Anweisung, die alle Spalten auswählt, diese kann jedoch angepasst werden. In diesem Fall behalten wir alle Spalten, ändern aber die Anweisung, um die Daten alphabetisch nach "AuthorName" zu sortieren. Die resultierende SQL-Anweisung wird ausschließlich per Mausklick erstellt, wobei kontextsensitive, interaktive Symbolleisten, Kombinationsfelder und Dropdown-Menüs verwendet werden.

Einer der größten Vorteile der Verwendung von MobileTogether zur Arbeit mit Datenbanken ist, dass Sie die gesamte Datenbankstruktur auf einmal importieren können. Dabei können Sie zuvor definierte Tabellenbeziehungen aktivieren oder sogar neue Tabellenbeziehungen direkt über den Dialog "Beziehungen hinzufügen/bearbeiten" definieren.
Wenn zusätzliche Datenbanktabellen mit der Haupttabelle verknüpft sind, können Sie die Tabellen auswählen, für die Sie die Verknüpfung aufrechterhalten möchten. (Die Verknüpfungen werden mithilfe von Primär- und Fremdschlüsseln erstellt.) Beispielsweise hat die Tabelle "Bücher" wie unten gezeigt einen Fremdschlüssel "AuthorID", der jeden Bucheintrag mit einem Autor in der Tabelle "Autoren" verknüpft. Wir können das Kästchen neben der Tabelle "Bücher" aktivieren, um diese Verknüpfung aufrechtzuerhalten, und der Quellcode der Seite wird so generiert, dass "Bücher" hierarchisch als Unterelement von "Autoren" verknüpft ist. Alle Spalten aus der Tabelle "Bücher" werden automatisch ausgewählt.

Dadurch wird die gesamte Datenbankstruktur in einer Baumstruktur im Bereich "Quellcode der Seite" angezeigt.

Jede Spalte ist jetzt verfügbar, um die Benutzeroberfläche und die Funktionalität der App zu entwickeln.
Das Wichtigste ist, dass MobileTogether den Prozess des Speicherns der vom Benutzer vorgenommenen Änderungen zurück in die Datenbank äußerst einfach gestaltet. Für jede Ebene der relationalen Tabellen, die in einer hierarchischen Baumstruktur dargestellt werden, können wir festlegen, ob beim Speichern alle Tabellenzeilen ersetzt werden sollen oder ob nur die vorgenommenen Änderungen gespeichert werden – und diese Einstellung kann für jede Ebene der Hierarchie unterschiedlich angewendet werden.

Der Datenbank-Assistent ist während des gesamten Entwicklungsprozesses einer Anwendung hilfreich. Beispielsweise können wir ihn nutzen, um Daten zu filtern, die wir als Grundlage für verschiedene Unterseiten unseres Anwendungsdesigns verwenden. Hier, bei der Definition der Unterseite zur Anzeige und Bearbeitung von Autoreninformationen, haben wir eine visuelle Anweisung erstellt, um die Daten so zu filtern, dass nur der Autor mit der aktuellen Autoren-ID ausgewählt wird.

Ob Sie nur mit einer einzelnen Tabelle oder mit mehreren miteinander verknüpften Tabellen arbeiten, der Datenbank-Assistent erleichtert es, Abfragen zu definieren, die die richtigen Daten aus der Datenbank abrufen. Dank der integrierten Funktionen von MobileTogether können Sie Daten einfach wieder in die Datenbank schreiben, indem Sie lediglich einen "Speichern"-Befehl ausführen und MobileTogether anweisen, nur die Änderungen in der gesamten hierarchischen Struktur zu speichern.
Natürlich bietet MobileTogether auch für Entwickler, die es bevorzugen, direkt mit SQL-Befehlen zu arbeiten, die notwendigen Möglichkeiten: Sie können jeden gewünschten Detaillierungsgrad steuern, einschließlich Transaktionen, Masseneinfügungen und der direkten Ausführung beliebiger SQL-Anweisungen

Erfahren Sie mehr und testen Sie es jetzt
Um all dies in Aktion zu sehen, schauen Sie sich unser Tutorial-Video zur App-Entwicklung an, das zeigt, wie die datenbankgesteuerte App für den Buchkatalog von Anfang bis Ende erstellt wurde.
Um mit der Entwicklung einer App zu beginnen, die eine Verbindung zu einer Backend-Datenbank herstellt, können Sie den kostenlosen MobileTogether Designer herunterladen.