Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi D2007 & Oracle: "Ihre Anwendung ist für die Benutzung dies.. (https://www.delphipraxis.net/96881-d2007-oracle-ihre-anwendung-ist-fuer-die-benutzung-dies.html)

stefanniehaus 1. Aug 2007 08:55

Datenbank: Oracle • Version: 9.2 • Zugriff über: BDE 5.2.0.2

D2007 & Oracle: "Ihre Anwendung ist für die Benutzu
 
Guten Morgen!

Ich habe da mal ein Problem mir Oracle.
Und zwar habe ich eine Anwendung, die sowohl mit Interbase/Firebird-Datenbanken als auch mit Oracle-Datenbanken läuft.
Ich greife mit Hilfe der Standart-Delphi-Komponenten (TQuery etc.) über die BDE 5.2.0.2 wahlweise über den Firebird SQL-Server oder über den Oracle 9.2 Client auf die entsprechende Datenbank zu.
Dabei kam bisher Borland Delphi 7 Enterprise zum Einsatz und alles funktionierte problemlos.

Seit kurzem habe ich zusätzlich Delphi 2007 Professional installiert.
Hier kann ich zwar problemlos auf die Interbase/Firebird-Datenbank zugreifen, jedoch in keinem Fall mehr auf Oracle-Datenbanken. Die Fehlermeldung lautet immer
"Ihre Anwendung ist für die Benutzung dieses Treibers nicht geeignet".

Am meiner Anwendung selbst kann es nicht liegen. Erstelle ich ein kleines Testprojekt und führe ein einfaches SELECT-Statement aus, so kann ich, wenn ich die Anwendung mit Delphi 7 compiliere, problemlos auf Oracle zugreifen. Compiliere ich den IDENTISCHEN Quellcode unter Delphi 2007 Professional, so kommt beim Datenbankzugriff besagte Fehlermeldung.
An der BDE selbst oder am Oracle-Client kann es nicht liegen, da ich über den BDEAdmin problemlos eine Verbindung herstellen kann.

Auf mehreren Seiten ist zu lesen, dass Codegear erst mit "Delphi 2007 Enterprise" Datenbanktreiber für Oracle mitliefert. Diese sind aber wenn ich richtig verstanden habe für dbExpress. Betrifft dies auch den Fall, dass ich über die BDE gehe?
Kann ich erst mit Delphi 2007 Enterprise auf Oracle-Datenbanken zugreifen oder gibt es irgendwie noch einen anderen Trick?

Gruß und Danke
Stefan


PS: Ich suche keine anderen Komponenten oder andere Möglichkeiten auf die Datenbank zu zu greifen. Diese stehen nicht zur Diskussion...

Ach ja: Drei Kollegen von mir haben Delphi 2007 Enterprise installiert und keine Probleme beim Zugriff auf die Datenbank. Jetzt geht es halt um die Frage, ob es an Delphi liegt oder an meinem System. Aus lizenzrechtlichen Gründen können wir nicht mal einfach so testweise D2007 Enterprise installieren...

mkinzler 1. Aug 2007 09:18

Re: D2007 & Oracle: "Ihre Anwendung ist für die Ben
 
Zitat:

Aus lizenzrechtlichen Gründen können wir nicht mal einfach so testweise D2007 Enterprise installieren...
Hierfür würde ja die Trial reichen um zu Testen.

Zitat:

PS: Ich suche keine anderen Komponenten oder andere Möglichkeiten auf die Datenbank zu zu greifen. Diese stehen nicht zur Diskussion...
Du fährst mit Vollgas auf einen abhang zu, aber Bremsen: Nein!

stefanniehaus 1. Aug 2007 09:21

Re: D2007 & Oracle: "Ihre Anwendung ist für die Ben
 
Zitat:

Zitat von mkinzler
Zitat:

Aus lizenzrechtlichen Gründen können wir nicht mal einfach so testweise D2007 Enterprise installieren...
Hierfür würde ja die Trial reichen um zu Testen.

Das wäre letztendlich die letzte Möglichkeit... bevor ich mir die ganze Arbeit mache, wollte ich aber erst einmal sehen ob andere entsprechend ähnliche Erfahrungen gemacht haben.

Zitat:

Zitat von mkinzler
Zitat:

PS: Ich suche keine anderen Komponenten oder andere Möglichkeiten auf die Datenbank zu zu greifen. Diese stehen nicht zur Diskussion...
Du fährst mit Vollgas auf einen abhang zu, aber Bremsen: Nein!

Ist mir klar. Bei dem Programm handelt es sich aber um eine kommerzielle Firmenanwendung mit 1000 Formularen usw. Das kann man nicht so einfach umstellen. Wir gucken uns natürlich nach Alternativen um; nun geht es aber erst einmal darum aktuelle Probleme zu lösen.

hoika 1. Aug 2007 09:28

Re: D2007 & Oracle: "Ihre Anwendung ist für die Ben
 
Hallo,

willkommen im Club ... (Umstellung).
Es kann sein, dass die 2007 Prof. eine andere Bde installiert hat,
die nicht sql-server fähig ist.
Ja, Firebird geht, frag micht jetzt nicht weiter ;).

Ich hatte nur eine ähnliche Meldung mal,
als ein Kunde eine Telefon-CD installiert hat.
Die brachte ihre eigene, lokale Bde mit,
und schnipps mein Programm lief nicht mehr.

Installiere die Bde noch mal drüber,
z.B. von hier

http://ibinstall.defined.net/dl_bdeinfo.htm

Wenn das nicht hilft, lösche das Bde-Verzeichnis komplett
Pfad findest du in der BDE-Verwaltung (Systemsteuerung).

Apropos Umstellung:
Was haben 1000 Forms mit der Datenbank zu tun ?
Der komplette DB-Code ist doch ordentlich in Extraklassen / Datamodules,
oder etwa nicht ? ;) ;)

Ich bin gerade dabei, die TTables aus den Forms zu enfernen,
durch eine eigene TMyQuery zu ersetzen (in eigenen DB-Klassen),
die zur Zeit noch direkt von TQuery abgeleitet ist.
Das wird aber noch geändert (bridge pattern)

Dann werde ich mal ein paar Komponentensammlungen probieren (bin gerade bei UIB)


Heiko

merlin17 1. Aug 2007 12:42

Re: D2007 & Oracle: "Ihre Anwendung ist für die Ben
 
Stefan,

die IDE's von Borland haben seit Delphi 1 (!?) die Unterscheidung von Prof und Enterprise und deren Zugriffsmöglichkeiten über die SQL-Links von der BDE, d.h. die Prof erlaubt nicht den Zugriff auf C/S-Datenbanken wie Oracle, DB2 etc.etc. .....(Ausnahme war/ist immer InterBase und dessen Derivate gewesen) und Du
gehst ja über "BDE-SQLLinks-OCI.dll"
Alternative, wenn überhaupt <g>, wäre der Weg über "BDE-ODBC-OCI.dll" .... damit sollte es funktionieren, auch wenn eine zusätzliche Layer integriert ist....

und das Beispiel mit dem Fahren auf einen Abgrund von einem der Vorredner ist sehr treffend.. was machst Du wenn es mit einem XP oder Vista-Patch solche Probleme gibt, dass kein BDE-Zugriff mehr geht.... einfach über die Lage nachdenken und lieber ein Ende mit Schrecken als umgekehrt....


-take care


:-) thomas

hoika 1. Aug 2007 13:09

Re: D2007 & Oracle: "Ihre Anwendung ist für die Ben
 
Hallo,

> und das Beispiel mit dem Fahren auf einen Abgrund von einem der Vorredner ist sehr treffend.. was
> machst Du wenn es mit einem XP oder Vista-Patch solche Probleme gibt, dass kein BDE-Zugriff mehr
> geht.... einfach über die Lage nachdenken und lieber ein Ende mit Schrecken als umgekehrt....

dann sagt man dem Kunden, Vista ist Schuld,
baut nen Terminalserver (2003) auf und arbeitet dort weiter ;)

Im Ernst, ihr habt ja alle Recht,
wir ollen Bde-Heinis müssen irgendwann mal weg davon.

Aber deprecated ist die Bde doch erst seit 2006 (oder war es 1996 ? ;) )


Heiko

merlin17 1. Aug 2007 13:21

Re: D2007 & Oracle: "Ihre Anwendung ist für die Ben
 
Zitat:

Aber deprecated ist die Bde doch erst seit 2006 (oder war es 1996 ? )
dazwischen :thumb:

Zitat:

We are deprecating the BDE SQL Links technology in 2002 and 2003.
CodeGear-DevelopersNetwork-Artikel


:-) thomas

stefanniehaus 1. Aug 2007 18:13

Re: D2007 & Oracle: "Ihre Anwendung ist für die Ben
 
@hoika: Stimmt, so komplex ist die Umstellung nicht, da wir schon Queries etc. ausgetauscht haben. Wir haben aber noch keine Komponente gefunden, die sowohl Interbase/Firebird als auch Oracle problemlos unterstützt

@merlin17: In der BDEAdministration ist für den Oracle-Native-Treiber als "Vendor" "Oci.dll" eingetragen. Meinst du das?


@all
Nach längerem suchen kann ich nun sagen, dass die o.g. Fehlermeldung immer kommt, wenn die Delphi-Version nicht das "Recht" hat, auf die Datenbank zuzugreifen.
Kann das jemand bestätigen, dass man mit der D2007 Professional-Version nicht auf Oracle zugreifen kann (mit BDE) ? Braucht man dazu unbedingt die Enterprise-Version?
Oer kann ich da doch noch irgendwas "umbiegen" ?

Eine D2007 Enterprise-Trial möchte ich erstmal nicht installieren, da es ein Firmen-PC ist und ich ja täglich produktiv sein muss.. und 3 Delphi-Versionen auf einem PC... naja ;)

merlin17 1. Aug 2007 18:25

Re: D2007 & Oracle: "Ihre Anwendung ist für die Ben
 
wie ich schon sagte, mit der SKU Prof kannst du nicht die SQL-Links für Oracle nutzen....


:-) thomas

Bernhard Geyer 1. Aug 2007 20:27

Re: D2007 & Oracle: "Ihre Anwendung ist für die Ben
 
Zitat:

Zitat von stefanniehaus
@hoika: Stimmt, so komplex ist die Umstellung nicht, da wir schon Queries etc. ausgetauscht haben. Wir haben aber noch keine Komponente gefunden, die sowohl Interbase/Firebird als auch Oracle problemlos unterstützt

Wieso muß das eine Komponente können? Da die SQL-Dialekte eh unterschiedlich sind mußt du den DB-Zugriff (teilweise) gesondert Implementieren. Und wenn dann kann man sowas mit einem Bridge-Pattern erschlagen und kann für jede DB die passende Komponente nehmen9

Zitat:

Zitat von stefanniehaus
@merlin17: In der BDEAdministration ist für den Oracle-Native-Treiber als "Vendor" "Oci.dll" eingetragen. Meinst du das?

Auch wenn ich nicht merlin bin. Das ist AFAIK ein SQL-Links-Treiber. Übrigens wirst du eh vor dem "End of Live" sein wenn jemand auf die Idee kommt eine Oracle-NET 10/11 Client zu installieren. Dieser hat eine ander API als die älteren Versionen (Falls nicht OCI.DLL von Borland kommt und keinen NET-Client erwartet.

Zitat:

Zitat von stefanniehaus
Eine D2007 Enterprise-Trial möchte ich erstmal nicht installieren, ...

Ist nur problematisch bei einer installierten Delphi 2006-Version. Alle anderen Versionen ist ein D2007 egal.


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:54 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz