Registriert seit: 27. Nov 2017
2.490 Beiträge
Delphi 7 Professional
|
AW: Zugriff auf POET Datenbank (ca. 1999)
6. Mär 2024, 23:53
Mal beim Hersteller nachfragen: https://www.actian.com/databases/nosql/
Da steht, das u. a. per JDO auf deren Datenbanken zugegriffen werden kann.
Mit Hilfe von Java könnte unter Umständen, eventuell, vielleicht eine Möglichkeit bestehen, ein passendes Hilfsmittel zu bauen.
Da ich allerdings von dem Thema keine Ahnung habe, hab' ich mal die KI meiner Wahl interviewt. Dabei kam so etliches heraus, das eventuell für Dich als Ansatz zur weiterern Forschung dienen könnte (hoffentlich).
Zitat von Frage:
Wie kann man auf eine POET-Datenbank (von ca. 1999, Vorgänger von FastObjects) zugreifen? Gibt es da Werkzeuge zu oder wäre ein Export in eine andere Datenbank oder als CSV-Datei möglich? Bzw. gibt es Quelltexte oder Komponenten für Delphi, mit denen ein Zugriff möglich wäre?
Zitat von Antwort:
Der Zugriff auf eine POET-Datenbank, insbesondere eine ältere Version aus dem Jahr 1999, kann eine Herausforderung sein, da die Technologie seitdem erheblich weiterentwickelt wurde. POET wurde später zu FastObjects?, und es könnte schwierig sein, spezifische Tools oder Bibliotheken zu finden, die noch mit der alten POET-Datenbank kompatibel sind.
Für den Zugriff auf die Datenbank könnten Sie versuchen, eine ältere Version der Software zu finden, die noch die POET-Datenbank unterstützt. Laut einigen Quellen unterstützte POET 2.1 32-Bit-Zugriffe und Preemptive Multitasking8. Es könnte jedoch schwierig sein, eine solche Version zu finden und sie auf modernen Betriebssystemen zum Laufen zu bringen.
Was den Export der Daten in eine andere Datenbank oder als CSV-Datei betrifft, so hängt dies stark von den spezifischen Tools ab, die Sie zur Verfügung haben. Generell ist es möglich, Daten aus einer Datenbank in eine CSV-Datei zu exportieren4, aber das spezifische Verfahren hängt von den verfügbaren Tools und der Struktur der POET-Datenbank ab.
In Bezug auf Delphi gibt es viele Komponenten für den Zugriff auf Datenbanken¹²³. Allerdings ist es unklar, ob es spezifische Komponenten für den Zugriff auf eine POET-Datenbank gibt. Es könnte notwendig sein, eine benutzerdefinierte Lösung zu entwickeln oder einen Datenbankexperten zu konsultieren, um eine geeignete Lösung zu finden.
Bitte beachten Sie, dass diese Informationen aufgrund des Alters der POET-Datenbank und der ständigen Weiterentwicklung der Technologie möglicherweise nicht vollständig genau sind. Es wird empfohlen, einen Datenbankexperten zu konsultieren, um sicherzustellen, dass Sie die beste Vorgehensweise für Ihre spezifische Situation wählen.
Quelle: Unterhaltung mit Bing, 6.3.2024
(1) Poet wird FastObjects | heise online. https://www.heise.de/news/Poet-wird-...cts-38837.html.
(2) In drei Varianten erhaeltlich Objekt-Datenbank "Poet" fuer Windows .... https://www.computerwoche.de/a/in-dr...aechen,1131868.
(3) Wie man Daten aus MySQL in eine CSV-Datei exportiert. https://learnsql.de/blog/wie-man-dat...ei-exportiert/.
(4) Datenbanken - Delphi-Treff. https://www.delphi-treff.de/tutorials/datenbanken/.
(5) Datenbanken verwenden – RAD Studio - Embarcadero/IDERA Documentation Wiki. https://docwiki.embarcadero.com/RADS...nken_verwenden.
(6) Datenbankanwendungen erstellen – RAD Studio. https://docwiki.embarcadero.com/RADS...ngen_erstellen.
(7) How to Export Subscribers from MailPoet. https://kb.mailpoet.com/article/330-...-from-mailpoet.
(8) DATEV-Export und Belege im CSV-Format exportieren. https://support.phorest.com/hc/de/ar...at-exportieren.
(9) Export- Csv (Microsoft.PowerShell.Utility) - PowerShell. https://learn.microsoft.com/de-de/po...powershell-7.4.
(10) Datenbanksystem Poet wieder mit Linux-Version | heise online. https://www.heise.de/news/Datenbanks...ion-17303.html.
(11) Software-Firmen Poet und Versant fusionieren | heise online. https://www.heise.de/news/Software-F...ren-86031.html.
Zitat von Frage:
Können Sie mir mehr über FastObjects erzählen?
Zitat von Antwort:
FastObjects ist ein hochleistungsfähiges, transaktionsorientiertes Objektverwaltungssystem, das entwickelt wurde, um die Anforderungen von objektorientierten Programmierern zu erfüllen, die Anwendungsobjekte mit einer robusten Datenbank-Engine verwalten müssen²4. Es funktioniert gleichermaßen gut in eingebetteten oder Client/Server-Anwendungen²4.
FastObjects ist eine objektorientierte Datenbankverwaltungssystem, das entwickelt wurde, um C++ und Java Objekte zu speichern³. FastObjects versteht C++ Klassendeklarationen mit Unterstützung für Kapselung, Vererbung, Polymorphismus, Objektidentität und Objektreferenzen³.
FastObjects ist eines der Produkte, die von der Versant Corporation angeboten werden, einem börsennotierten Hersteller von Data-Management-Software¹. Die Versant Corporation bietet zwei kommerzielle Objektdatenbank-Technologien an, "Versant Object Database" und "Versant FastObjects", sowie die Open-Source Objektdatenbank-Technologie "db4o"¹. Versant-Technologie wird vor allem bei komplexen Daten und großen bis sehr großen Datenmengen (Big Data) eingesetzt¹.
Bitte beachten Sie, dass diese Informationen möglicherweise nicht vollständig genau sind, da die Technologie ständig weiterentwickelt wird. Es wird empfohlen, einen Datenbankexperten zu konsultieren, um sicherzustellen, dass Sie die beste Vorgehensweise für Ihre spezifische Situation wählen..
Quelle: Unterhaltung mit Bing, 6.3.2024
(1) FastObjects 12 - ESD - Electronic Software Distribution. http://esd.actian.com/product/Versant_FastObjects/12.0.
(2) ESD - Electronic Software Distribution. https://esd.actian.com/product/Versant_FastObjects.
(3) FastObjects - Database of Databases. https://dbdb.io/db/fastobjects.
(4) Versant – Wikipedia. https://de.wikipedia.org/wiki/Versant.
(5) de.wikipedia.org. https://de.wikipedia.org/wiki/Versant.
Zitat von Frage:
Wie kann man aus einer FastObjects-Datenbank Daten exportieren, welche Dateiformate sind möglich?
Zitat von Antwort:
Der Export von Daten aus einer FastObjects-Datenbank hängt von den spezifischen Tools und Funktionen ab, die Sie zur Verfügung haben. Leider gibt es in den von mir gefundenen Quellen keine spezifischen Informationen über die unterstützten Exportformate für FastObjects¹².
In der Regel unterstützen viele Datenbanksysteme den Export von Daten in gängige Formate wie CSV, XML oder SQL. Es ist jedoch wichtig zu beachten, dass die spezifischen Exportoptionen von der verwendeten Version von FastObjects und den verfügbaren Tools abhängen können.
Es könnte hilfreich sein, die Dokumentation von FastObjects zu konsultieren oder sich an den Support von Versant, dem Unternehmen, das FastObjects entwickelt hat, zu wenden, um weitere Informationen zu erhalten.
Bitte beachten Sie, dass diese Informationen möglicherweise nicht vollständig genau sind, da die Technologie ständig weiterentwickelt wird. Es wird empfohlen, einen Datenbankexperten zu konsultieren, um sicherzustellen, dass Sie die beste Vorgehensweise für Ihre spezifische Situation wählen.
Quelle: Unterhaltung mit Bing, 6.3.2024
(1) Allgemeine Informationen zu FastObjects - eplan.help. https://www.eplan.help/de-de/Infopor...ts_commons.htm.
(2) Einrichten eines FastObjects-Datenbank-Servers. https://www.eplan.help/de-DE/Infopor...ase_server.htm.
(3) Einrichten eines FastObjects - Datenbank-Servers als Dienst. https://www.eplan.help/de-DE/Infopor...as_service.htm.
Zitat von Frage:
Gibt es eine Möglichkeit, Daten aus FastObjects in CSV zu exportieren?
Zitat von Antwort:
Es gibt keine spezifischen Informationen in den von mir gefundenen Quellen über die Möglichkeit, Daten direkt aus FastObjects in das CSV-Format zu exportieren¹².
In der Regel bieten viele Datenbanksysteme Funktionen zum Exportieren von Daten in gängige Formate wie CSV. Allerdings hängt die Verfügbarkeit solcher Funktionen von der spezifischen Version von FastObjects und den verfügbaren Tools ab.
Es könnte hilfreich sein, die Dokumentation von FastObjects zu konsultieren oder sich an den Support von Versant, dem Unternehmen, das FastObjects entwickelt hat, zu wenden, um weitere Informationen zu erhalten.
Bitte beachten Sie, dass diese Informationen möglicherweise nicht vollständig genau sind, da die Technologie ständig weiterentwickelt wird. Es wird empfohlen, einen Datenbankexperten zu konsultieren, um sicherzustellen, dass Sie die beste Vorgehensweise für Ihre spezifische Situation wählen.
Quelle: Unterhaltung mit Bing, 6.3.2024
(1) Allgemeine Informationen zu FastObjects - eplan.help. https://www.eplan.help/de-de/Infopor...ts_commons.htm.
(2) Direkter Zugriff auf FastObjects Datenbank - VonDoczuDoc.de. https://www.vondoczudoc.de/viewtopic.php?t=3903.
(3) Einrichten eines FastObjects - Datenbank-Servers als Dienst. https://www.eplan.help/de-DE/Infopor...as_service.htm.
Zitat von Frage:
Wo finde ich eine vollständige Dokumentatrion zu FastObjects von Versant?
Zitat von Antwort:
Die vollständige Dokumentation zu FastObjects von Versant finden Sie auf der Website von Actian, dem Unternehmen, das FastObjects entwickelt hat. Hier sind einige Links, die Sie interessieren könnten:
- [FastObjects 12.0 Dokumentation](^1^)
- [FastObjects 14.0 Dokumentation](^3^)
Bitte beachten Sie, dass Sie möglicherweise eine Lizenz oder Berechtigung benötigen, um auf bestimmte Teile der Dokumentation zugreifen zu können. Es wird empfohlen, sich an den Support von Versant zu wenden, wenn Sie weitere Informationen benötigen oder Schwierigkeiten beim Zugriff auf die Dokumentation haben.
Quelle: Unterhaltung mit Bing, 6.3.2024
(1) FastObjects 12 - ESD - Electronic Software Distribution. http://esd.actian.com/product/Versant_FastObjects/12.0.
(2) ESD - Electronic Software Distribution. https://esd.actian.com/product/Versa..._Documentation.
(3) Allgemeine Informationen zu FastObjects - eplan.help. https://www.eplan.help/de-de/Infopor...ts_commons.htm.
Zitat von Frage:
Kann man mit Hilfe von Delphi auf JDO (Java-Data_Objects) zugreifen? Wenn ja, mit Hilfe welcher Komponenten und ggfls. weiterer Datenbankschnittstellen?
Zitat von Antwort:
Direkter Zugriff auf Java Data Objects (JDO) aus Delphi heraus ist nicht trivial, da Delphi und Java unterschiedliche Laufzeitumgebungen verwenden. Es gibt jedoch einige Ansätze, die Sie in Betracht ziehen könnten:
1. **Java Native Interface (JNI)**: Mit JNI können Sie Java-Methoden aus nativem Code wie Delphi aufrufen¹. Sie könnten eine Java-Klasse erstellen, die als Vermittler zwischen Ihrem Delphi-Code und den JDO-Objekten fungiert. Beachten Sie jedoch, dass die Verwendung von JNI komplex sein kann und eine gründliche Kenntnis der Speicherverwaltung in beiden Sprachen erfordert.
2. **Datenbankverbindungen**: Wenn Sie auf die zugrunde liegenden Daten in einer Datenbank zugreifen möchten, die von JDO-Objekten verwaltet wird, könnten Sie eine direkte Datenbankverbindung aus Delphi heraus verwenden. Delphi bietet eine Reihe von Datenbankzugriffskomponenten, einschließlich FireDAC, dbExpress und ADO5.
3. **Web Services**: Eine andere Möglichkeit besteht darin, einen Webdienst (z.B. REST oder SOAP) in Java zu erstellen, der auf Ihre JDO-Objekte zugreift. Ihr Delphi-Code könnte dann diesen Webdienst aufrufen, um Daten abzurufen oder zu manipulieren.
Bitte beachten Sie, dass alle diese Ansätze Vor- und Nachteile haben und die beste Lösung von Ihren spezifischen Anforderungen abhängt. Es ist auch wichtig zu beachten, dass jede dieser Methoden eine gewisse Komplexität mit sich bringt und sorgfältig getestet werden muss, um sicherzustellen, dass sie korrekt funktioniert.
Quelle: Unterhaltung mit Bing, 6.3.2024
(1) How do I instantiate a java object using JNI (Delphi). https://stackoverflow.com/questions/...ing-jni-delphi.
(2) What You Need To Know About Databases, Data Access, and Object .... https://learndelphi.org/what-you-nee...ing-in-delphi/.
(3) Java Native Access and delphi - Stack Overflow. https://stackoverflow.com/questions/...ess-and-delphi.
(4) Delphi: Accessing JSON Objects within a JSON Array. https://stackoverflow.com/questions/...n-a-json-array.
(5) oop - When to use Records Vs Objects - Stack Overflow. https://stackoverflow.com/questions/...rds-vs-objects.
Zitat von Frage:
Können Sie ein Beispiel für die Verwendung von JNI geben?
Zitat von Antwort:
Ja, ich kann Ihnen ein einfaches Beispiel für die Verwendung von JNI (Java Native Interface) geben. Hier sind die grundlegenden Schritte:
1. **Erstellen Sie eine Java-Klasse**
Zuerst müssen Sie eine Java-Klasse erstellen, die eine native Methode deklariert. Die native Methode wird in C oder C++ implementiert.
Code:
public class HelloWorld {
public native void print();
static {
System.loadLibrary("HelloWorld");
}
}
Zitat von Fortsetzung der Antwort:
In diesem Beispiel ist 'print' eine native Methode, die in einer nativen Bibliothek namens 'HelloWorld' implementiert ist.
2. **Generieren Sie eine Header-Datei**
Kompilieren Sie die Java-Klasse und verwenden Sie dann das 'javah'-Werkzeug, um eine C-Header-Datei zu generieren:
Code:
javac HelloWorld.java
javah HelloWorld
Zitat von Fortsetzung der Antwort:
Dies erzeugt eine Header-Datei namens 'HelloWorld.h'.
3. **Erstellen Sie eine native Implementierung**
Jetzt können Sie eine C- oder C++-Datei erstellen, die die native Methode implementiert. Hier ist ein einfaches Beispiel in C:
Code:
#include <jni.h>
#include <stdio.h>
#include "HelloWorld.h"
JNIEXPORT void JNICALL Java_HelloWorld_print(JNIEnv *env, jobject obj) {
printf("Hallo, Welt!\n");
return;
}
Zitat von Fortsetzung der Antwort:
In diesem Code ist 'Java_HelloWorld_print' die Implementierung der 'print'-Methode in der 'HelloWorld'-Klasse.
4. **Kompilieren Sie den nativen Code**
Verwenden Sie einen C- oder C++-Compiler, um den nativen Code zu kompilieren und eine dynamische Bibliothek zu erstellen. Der genaue Befehl hängt von Ihrem Betriebssystem und Ihrem Compiler ab.
5. **Führen Sie den Code aus**
Schließlich können Sie die Java-Klasse ausführen. Stellen Sie sicher, dass die Java-Laufzeitumgebung die native Bibliothek finden kann.
Zitat von Fortsetzung der Antwort:
Zitat von Frage:
Können Sie ein Beispiel für die Verwendung von JNI in Delphi geben?
Zitat von Antwort:
Ja, ich kann Ihnen ein einfaches Beispiel für die Verwendung von JNI (Java Native Interface) in Delphi geben. Hier sind die grundlegenden Schritte:
1. **Erstellen Sie eine Java-Klasse**
Zuerst müssen Sie eine Java-Klasse erstellen, die eine native Methode deklariert. Die native Methode wird in Delphi implementiert.
Code:
public class HelloWorld {
public native void print();
static {
System.loadLibrary("HelloWorld");
}
}
Zitat von Fortsetzung der Antwort:
In diesem Beispiel ist 'print' eine native Methode, die in einer nativen Bibliothek namens 'HelloWorld' implementiert ist.
2. **Generieren Sie eine Header-Datei**
Kompilieren Sie die Java-Klasse und verwenden Sie dann das 'javah'-Werkzeug, um eine C-Header-Datei zu generieren:
Code:
javac HelloWorld.java
javah HelloWorld
Zitat von Fortsetzung der Antwort:
Dies erzeugt eine Header-Datei namens 'HelloWorld.h'.
3. **Erstellen Sie eine Delphi-Implementierung**
Jetzt können Sie eine Delphi-Datei erstellen, die die native Methode implementiert. Hier ist ein einfaches Beispiel:
Delphi-Quellcode:
(* Class: HelloWorld
* Method: print
* Signature: ()V *)
procedure Java_HelloWorld_print(PEnv: PJNIEnv; Obj: JObject); stdcall;
begin
WriteLn ('Hallo, Welt!');
end;
Zitat von Fortsetzung der Antwort:
In diesem Code ist 'Java_HelloWorld_print' die Implementierung der 'print'-Methode in der 'HelloWorld'-Klasse4.
4. **Kompilieren Sie den Delphi-Code**
Verwenden Sie einen Delphi-Compiler, um den Delphi-Code zu kompilieren und eine dynamische Bibliothek zu erstellen. Der genaue Befehl hängt von Ihrem Betriebssystem und Ihrem Compiler ab.
5. **Führen Sie den Code aus**
Schließlich können Sie die Java-Klasse ausführen. Stellen Sie sicher, dass die Java-Laufzeitumgebung die native Bibliothek finden kann.
Zitat von Fortsetzung der Antwort:
Zitat von Frage:
Wie kann ich in Delphi per JNI JDO aufrufen?
Zitat von Antwort:
Die Verwendung von JNI (Java Native Interface) in Delphi zur Interaktion mit JDO (Java Data Objects) ist eine komplexe Aufgabe, da sie die Integration von zwei verschiedenen Programmiersprachen und Laufzeitumgebungen erfordert. Hier ist ein grundlegender Ansatz, wie Sie dies tun könnten:
1. **Erstellen Sie eine Java-Klasse, die JDO-Operationen ausführt**
Zuerst müssen Sie eine Java-Klasse erstellen, die die gewünschten JDO-Operationen ausführt. Diese Klasse sollte Methoden bereitstellen, die von Delphi aus aufgerufen werden können.
Code:
public class JdoOperations {
public native String performOperation(String input);
static {
System.loadLibrary("JdoOperations");
}
}
Zitat von Fortsetzung der Antwort:
In diesem Beispiel ist 'performOperation' eine native Methode, die in einer nativen Bibliothek namens 'JdoOperations' implementiert ist.
2. **Erstellen Sie eine Delphi-Implementierung**
Jetzt können Sie eine Delphi-Datei erstellen, die die native Methode implementiert. Hier ist ein einfaches Beispiel:
Delphi-Quellcode:
(* Class: JdoOperations
* Method: performOperation
* Signature: (Ljava/lang/String;)Ljava/lang/String; *)
function Java_JdoOperations_performOperation(PEnv: PJNIEnv; Obj: JObject; input: JString): JString; stdcall;
begin
// Führen Sie hier die gewünschten Operationen aus und geben Sie das Ergebnis zurück
end;
Zitat von Fortsetzung der Antwort:
In diesem Code ist 'Java_JdoOperations_performOperation' die Implementierung der 'performOperation'-Methode in der 'JdoOperations'-Klasse4.
Bitte beachten Sie, dass dies ein sehr einfaches Beispiel ist und die tatsächliche Implementierung von der Komplexität Ihrer Anforderungen abhängt. Sie müssen auch sicherstellen, dass Ihre Delphi-Anwendung korrekt mit der Java-Laufzeitumgebung interagiert, was zusätzliche Konfiguration und Fehlerbehandlung erfordern kann¹²³4.
Es ist auch wichtig zu beachten, dass die Verwendung von JNI in Delphi nicht die einzige Möglichkeit ist, mit JDO zu interagieren. Alternativen könnten die Verwendung von Webdiensten oder direkten Datenbankverbindungen sein, je nach Ihren spezifischen Anforderungen und dem Kontext Ihrer Anwendung. Es könnte auch hilfreich sein, einen erfahrenen Entwickler oder Berater zu konsultieren, um sicherzustellen, dass Sie die beste Lösung für Ihre Anforderungen wählen.
Quelle: Unterhaltung mit Bing, 6.3.2024
(1) How do I instantiate a java object using JNI (Delphi). https://stackoverflow.com/questions/...ing-jni-delphi.
(2) java native interface - Programming JNI with Delphi - Stack Overflow. https://stackoverflow.com/questions/...ni-with-delphi.
(3) JNI Wrapper for Delphi and FreePascal - GitHub. https://github.com/geoffsmith82/DelphiJNIWrapper.
(4) Using the Java Native Interface with Delphi (Part One - Introduction .... http://www.pacifier.com/~mmead/jni/d...phi-jni-1.html.
|