Eine benutzerdefinierte maßgeschneiderte API für RDM-Schemas

Oktober 10

Raima-Logo auf grauem Hintergrund

Die meisten Datenbanksoftware bieten eine oder mehrere APIs (ApplicationProgramming Interface) für den Zugriff auf Daten und die Datenmanipulation. Diese APIs folgen größtenteils entweder bestimmten Standards oder sind Eigentum der Datenbanksoftware. RDM verfolgt beide Ansätze.

Einführung

Die native RDM-Schnittstelle mit d_-Funktionen ist eine für die RDM-Core-Engine optimierte Low-Level-Schnittstelle, während die SQL-APIs auf einer SQL-Engine implementiert sind. Die SQL-Engine verwendet die native RDM-Schnittstelle als Speicher-Engine. Die native RDM-Schnittstelle leitet ein Schema weiter, das kompiliert werden muss. Das kompilierte Schema enthält ein Wörterbuch (von der Engine verwendet) und eine Header-Datei mit Strukturdeklarationen, die für den Zugriff auf Daten und für die Datenmanipulation verwendet werden können.

Kundenspezifische Schnittstelle

Mit der Veröffentlichung von RDM Embedded 10.1 (jetzt RDM) haben wir einen etwas anderen Ansatz gewählt. Anstatt eine Standard-API oder eine proprietäre API zu verwenden, die für die Datenbanksoftware spezifisch ist, haben wir die Schnittstelle auf die tatsächlichen Schemata zugeschnitten, die von Benutzern verwendet werden. Der Schema-Compiler wurde geändert, um auch eine maßgeschneiderte C ++ - API für eine Implementierung zu generieren.

Die maßgeschneiderte API wird als Spezialisierung von zwei Basisklassen implementiert. Die Db-Basisklasse, die den Zugriff auf eine Datenbank kapselt, und die Cursor-Basisklasse, die den Zugriff auf Datensätze in einer Datenbank kapselt. Diese Basisklassen enthalten öffentliche Methoden, die allen Datenbankschemata gemeinsam sind, und geschützte Methoden, die nur von der Implementierung der vom Schema-Compiler generierten Spezialklassen verwendet werden.

Die beiden Basisklassen definieren zusammen mit den Spezialklassen für ein bestimmtes Schema die genaue API. Durch die Verwendung dieser speziellen Schnittstellen hat der C ++ - Programmierer Zugriff auf eine API auf hoher Ebene, die seinem Schema entspricht und die problemlos in der Anwendung verwendet werden kann. Diese API ist vollständig und es ist keine andere API erforderlich, um Daten, die in einer RDM-Datenbank gespeichert sind, einfach, sicher und effizient abzufragen, einzufügen, zu aktualisieren und zu löschen.

Als nächstes werden wir uns ansehen, wie diese Schnittstellen instanziiert werden.

Get notified about new RDM updates

Be the first to know about new Raima Database Manager updates when they go live, use cases, industry trends and more.