Autor Beitrag
bis11
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1247
Erhaltene Danke: 2

Apple Mac OSX 10.11

BeitragVerfasst: Fr 29.11.02 15:29 
Hallo zusammen,

ich habe mal eine grundsätzliche Frage zu Orcale Datenbank-Servern. Wenn ich zum Beispiel einen Oracle Datenbank Server auf Linux habe und dafür meine Programme entwickle. Funktionieren dann auch noch meine Programme auf einem Oracle Datenbankserver für Windows oder auf sonst einem anderen Betriebssystem ?

Welche Methode sollte ich verwenden um Oracle Datenbanken zu bearbeiten mit einem Delphi-Programm (ZEOSLIB-Kompo, ODBC, ADO etc).
Alfons-G
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 307

Win XP Prof, Linux, Win 7
D5 Prof, D7 Architect, D2005 Architect, D2007 Architect
BeitragVerfasst: Fr 29.11.02 16:03 
:wave:
Oracle-Anwendungen sind prinzipiell plattformunabhängig. Eine Anwendung, welche auf den üblichen Oracle-Elementen Tabellen, Views. Stored Procedures, Trigger usw. aufbaut, sollte überall laufen.

Viel wichtiger ist die Frage, auf welcher Oracle-Version sollen Deine Programme laufen?
Gerade im Unix-Bereichsind noch viele Server mit 7er Versionen von Oracle im Einsatz. Unter Windows kann man meist zumindest mit 8.0x rechnen.
Von der Version 8.0x zu Oracle 8i (8.2) sind umfangreiche Änderungen erfolgt - mehr als die Versionsbezeichnung vermuten lässt. Ab 8i ist der Oracle DB-Server in Java implementiert, um die Portierung auf andere Hardware- und OS-Plattformen zu erleichtern.

Die aktuelle Version 9i ist die Erste, welche von der BDE nicht mehr unterstützt wird.

Mit jeder neuen Version kamen Erweiterungen im SQL-Dialekt, bei den Datentypen sowie in SQL/PL hinzu, welche z.T. äusserst hilfreich sind.

Die Anwender von Oracle-Datenbankprogrammen besitzen jedoch meist schon eine Datenbank, auf welche diverse Applikationen zugreifen. Du kannst im Allgemeinen nicht voraussetzen, dass der Anwender seine DB updatet, nur weil Du ein Programm anbietest, welches eine höhere Version als vorhanden erfordert.

Bei einer Auftragsentwicklung hast Du es leichter. Da erfragst Du die eingesetzte Version und richtest Dich danach.

Zu den Programmierschnittstellen:
ZEOS hat einen guten Ruf, ich kann aus eigener Erfahrung allerdings nichts dazu sagen.
ODBC kannst Du vergessen - viel zu langsam für alles, was mit größeren Datenmengen zu tun hat.
ADO ist der Microsoft-Nachfolger zu ODBC. Hier ist die Performance besser als bei ODBC.

Wir verwenden in der Arbeit mit großem Erfolg die ODAC-Komponenten (Oracle Data Acces). Diese gibt es für einige Euro mehr auch als ODAC-Net - Version, welche ohne installierten Oracle-Client arbeitet.
Ein Delphi-Programm, welches mit der -Net - Option kompiliert wurde, ist knapp 200 KB größer. Es ist aber nicht nötig, lokale Oracle-Komponenten wie OCI-DLL, TNSNAMES.ORA usw. zu installieren.
Da gibt es eine TOraSession-Komponente (analog der BDE-TDatabase-Kompo) - dieser werden die Verbindungsinformationen User, Password, SID mitgegeben. Dazu kommt noch IP-Adresse und Port des Oracle-Servers und das war's denn schon.

In der ODAC-Komponentenpalette findest Du Ersatz für alle BDE-Komponenten. Diese arbeiten mit allen üblichen datensensitiven Steuerelementen zusammen.
Eine Testversion (nur in der IDE lauffähig, ohne -NET - Option) findest Du bei Torry zum Download. Die Kompos kann man in Deutschland über ShareIt bestellen und registrieren.

8)

_________________
Alfons Grünewald