Dies ist die alte 4D Dokumentations-Website. Die neue und aktualisierte Dokumentation finden Sie unter developer.4d.com

Home

 
4D v19
Überblick

ORDA    


 

ORDA steht für Object Relational Data Access. Es ist eine erweiterte Technologie, die es erlaubt, eine Datenbank als Objekt zu verwenden - durch die Sprache oder mit Widgets der Benutzeroberfläche.

Die Relationen werden transparent in das Konzept einbezogen, in Kombination mit lazy loading, was dem Entwickler alle typischen Schwierigkeiten bei der Datenauswahl oder -übertragung erspart.

Bei ORDA erfolgt der Datenzugriff über eine Abstraktionsschicht, genannt Datastore (Datenspeicher). Das ist ein Objekt, das eine Schnittstelle zum Datenbankmodell und den Daten über 4D Objekte bietet. Tabellen werden auf Dataclass-Objekte abgebildet, Felder und Relationen sind Dataclass-Attribute und Datensätze sind vergleichbar mit Entities. Eine Übersicht finden Sie unter Glossar.

Anstatt Informationen als Tabellen, Datensätze und Felder darzustellen, verwendet ORDA einen alternativen Ansatz, der die Daten genauer auf reale Konzepte abbildet.

Stellen Sie sich die Fähigkeit vor, eine relationale Struktur zu denormalisieren, ohne die Effizienz zu beeinträchtigen. Stellen Sie sich vor, alles über die Business-Objekte in Ihrer Anwendung so zu beschreiben, dass die Verwendung der Daten einfach und unkompliziert wird und ein vollständiges Verständnis der relationalen Struktur entfällt.

In einem Datastore kann eine einzelne Dataclass alle Elemente enthalten, die eine traditionelle relationale Datenbanktabelle bilden, aber auch Werte von verwandten übergeordneten Entities sowie direkte Verweise auf verwandte Entities und Entity-Selections.

Eine Abfrage gibt eine Liste von Entities zurück, die als Entity-Selection bezeichnet wird und die die Rolle des Zeilen-Sets einer SQL-Abfrage erfüllt. Der Unterschied besteht darin, dass jede Entity "weiß", wo sie im Datenmodell hingehört und ihre Beziehung zu allen anderen Entities "versteht". Das bedeutet, dass ein Entwickler in einer Abfrage nicht erklären muss, wie er die verschiedenen Informationen zueinander in Beziehung setzt, noch in einem Update, wie er geänderte Werte in die relationale Struktur zurückschreibt.

Darüber hinaus können ORDA-Objekte wie Entity-Selections oder Entities einfach an Objekte wie Listboxen oder Variablen gebunden werden. Kombiniert mit leistungsstarken Funktionen wie This und Form ermöglichen sie den Aufbau moderner und modularer Schnittstellen, die auf Objekten und Collections basieren.

Grundsätzlich behandelt ORDA Objekte. In ORDA sind alle wichtigen Konzepte, einschließlich des Datastore, über Objekte verfügbar. ORDA-Objekte werden bei Bedarf durch 4D Methoden erzeugt und instanziiert (Sie müssen sie nicht anlegen).

Beachten Sie jedoch, dass Sie diese normalerweise in 4D Objektvariablen speichern müssen, wie alle anderen Objekte (deklariert mit dem Befehl C_OBJECT). Objekte in ORDA können wie 4D Standardobjekte behandelt werden (siehe Objekte (Sprache)), profitieren aber automatisch von spezifischen Eigenschaften und Methoden.

In ORDA sind folgende Objekte verfügbar:

  • Datastore: Der Datenspeicher ist das Schnittstellenobjekt zur Datenbank. Es erstellt eine Darstellung der gesamten Datenbank als Objekt und ist über den Befehl ds verfügbar.
  • Dataclass: Eine Datenklasse ist vergleichbar mit einer Tabelle. Sie wird als Objektmodell verwendet und verweist auf alle Felder als Attribute, einschließlich relationaler Attribute (Attribute, die auf Beziehungen zwischen Datenklassen aufbauen). Relationale Attribute können wie beliebige Attribute in Abfragen genutzt werden.
  • Attribute: Eigenschaften von Datenklassen sind Attributobjekte, die die zugrundeliegenden Felder oder Relationen beschreiben.
  • Entity-Selection: Eine Entity-Auswahl verweist auf eine oder mehrere Entities aus einer Datenklasse. Sie wird in der Regel als Ergebnis einer Abfrage erstellt.
  • Entity: Eine Entity ist vergleichbar mit einem Datensatz. Sie ist genaugenommen ein Objekt, das auf einen Datensatz in der Datenbank verweist.

Damit Sie ORDA in Ihren 4D Datenbanken verwenden können, müssen Sie folgende Anforderungen und Spezifikationen beachten:

  • In Anwendungen, die aus Versionen vor v17 konvertiert wurden, müssen folgende Optionen zur Kompatibilität markiert sein:
    • Verwende Objektnotation, um auf Objekteigenschaften zuzugreifen (Unicode erforderlich)
    • Verwende Datumstyp statt ISO Datumsformat in Objekten

    Weitere Informationen dazu finden Sie auf der Seite Kompatibilität.

  • Tabellen ohne Primärschlüssel oder mit zusammengesetztem Primärschlüssel sind in Datatstore nicht verfügbar.
  • Untertabellen werden nicht unterstützt.
  • Felder vom Typ BLOB werden nicht verwaltet
  • Namen für Tabellen, Felder und Verknüpfungen müssen mit den standardmäßigen Namenskonventionen für Objekte übereinstimmen. Weitere Informationen dazu finden Sie im Abschnitt Identifier für Objekteigenschaft.

Hinweis: ORDA berücksichtigt weder die Option "Unsichtbar" für Tabellen oder Felder, noch die virtuelle Struktur, die durch die Befehle SET TABLE TITLES oder SET FIELD TITLES definiert ist.

 
 

 
EIGENSCHAFTEN 

Produkt: 4D
Thema: ORDA

 
SEITENINHALT 
 
GESCHICHTE 

Erstellt: 4D v17

 
ARTIKELVERWENDUNG

4D Designmodus ( 4D v19)