vorheriger Abschnitt Inhalt nachfolgender Abschnitt

2.8 Hinweise zur ORACLE Datenbankanbindung

Über eine SQL Schnittstelle kann InterAss  auf Oracle Datenbanken zugreifen. Hierzu verwendet der Treiber das "Oracle Call Interface" (OCI 32Bit). Der Zugriff wurde bisher mit den Oracle Versionen 8.x bis 12.x nachgewiesen. Die Benutzung des OCI erfordert zwingend, dass auf dem Rechner auf dem InterAss  ausgeführt wird, der zur Datenbank passende Oracle Client (32Bit) installiert ist.


Hinweis: Zur Zeit wird Oracle 9i, 10g und höher unterstützt.
Hinweis: Wenn dies der Fall ist, findet man auf dem Rechner ein "Oracle" Verzeichnis, z.B. "C:\oraclexe"

 

Qt 4.6.3: The Qt OCI plugin supports Oracle 9i, 10g and higher.  After connecting to the Oracle server, the plugin will auto-detect the database version and enable features accordingly. It's possible to connect to a Oracle database without a tnsnames.ora file. This requires that the database SID is passed to the driver as the database name and that a hostname is given.

OCI User Authentication: The Qt OCI plugin supports authentication using external credentials (OCI_CRED_EXT). Usually, this means that the database server will use the user authentication provided by the operating system instead of its own authentication mechanism. Leave the username and password empty when opening a connection with  QSqlDatabase to use the external credentials authentication.

 

Die Zugriffsmethode 'SID' wird nur unterstützt durch direkten Eintrag in Windows Registry, Angabe über "Datei->Steuerdaten" oder über die Steuerdatei 'einstellungen_db.inf':
Der Zugriff ohne Verwendung von "tnsnames.ora" wird verwendet, wenn sowohl eine Angabe für den Host als auch den Port gemacht wird.
Bitte beachten um SID zu verwenden muss der Port immer angegeben werden, auch wenn Standart Port Nummer. Beispiel:

    DB-Host = oralehost
    DB-Port = 1521
 

Zur Zeit unterstützt InterAss interaktiv nur den Zugriff auf der Basis der Datei "tnsnames.ora" (wenn DB-Port=0 oder undefiniert):

Entscheidend ist dann, dass in der Datei "tnsnames.ora" ( vollständiger Dateiname für obiges Beispiel: C:\oraclexe\app\oracle\product\10.2.0\server\NETWORK\ADMIN\tnsnames.ora ) ein Descriptor für die richtige Oracle Datenbank vorhanden ist.

Beispiel für den Dateiinhalt:

XE =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = radlach)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = XE)
)
)

HOST bezeichnet den Server auf dem die eigentliche Datenbank läuft und zwar unter dem angegebenen Service Namen.

Damit InterAss  in dieser Datenbank Daten ablegen kann, muss vom Datenbankadministrator ein geeignetes Schema (User) angelegt werden. Die Zugriffsrechte sollten mindestens das Eintragen und Löschen von Daten zulassen. Sehr komfortabel wäre noch die Berechtigung zum Anlegen von Tabellen und Datenspalten (dann kann InterAss  im Falle eines Updates notwendige Tabellenerweiterungen automatisch vornehmen). In unserem Beispiel lautet das Schema "interass_db", das Kennwort ist "interass".

Damit Interass mit dieser Orcale Datenbank eine Verbindung aufbauen kann, sind dann in InterAss  ( Datei -> Eigenschaften -> Datenbank ) folgende angaben zu machen (Die Angabe für Host kann entfallen, und wird nicht verwendet):

 

bilder/interass_oralce.JPG

 

2. Zugriff auf Oracle Datenbank mit Mircosoft Access

In Sonderfällen kann es hilfreich sein, direkt auf die Tabellen einer InterAss  Oracle Datenbank zuzugreifen. Hierzu könnte einerseits vom Datenbankadministrator das Oracle Webinterface frei geschaltet sein. Wenn jedoch auf dem eigenen PC Microsoft Access installiert ist, gibt es auch die Möglichkeit über ODBC auf die Oracle Datenbank zuzugreifen. Dies kann durch folgende Schritte erreicht werden:

2.1 Anlegen einer "neuen" Datenbank in MS Access

bilder/odbc_1.JPG

 

 

2.2 Eine Verbindung mit der Oracle Datenbank herstellen

bilder/odbc_2.JPG

 

bilder/odbc_3.JPG

 

Einmalig - Eine neue Datenquelle erstellen:

bilder/odbc_4.JPG

 

bilder/odbc_5.JPG

 

bilder/odbc_6.JPG

 

bilder/odbc_7.JPG

 

Und jetzt die entscheidenden Verbindungsdaten:

bilder/odbc_8.JPG

"Server" entspricht "Datenbank" in InterAss  bzw. Bezeichnung des Descriptors in "tnsnames.ora".

 

Jetzt mit dieser Datenquelle verbinden:

bilder/odbc_9.JPG

 

Nochmal das Kennwort eingeben (lautet in unserem Beispiel "interass" siehe oben)

bilder/odbc_10.JPG

 

Die entscheidende Hürde ist genommen, wir sind über ODBC mit der Oracle Datenbank verbunden. Leider müssen jetzt noch die für InterAss  relevanten Tabellen ausgewählt werden (Prefix INTERASS_DB):

bilder/odbc_11.JPG

 

Hier ein Blick auf die Tabelle der Netzdaten:

bilder/odbc_12.JPG

 

ACHTUNG: Vom direkten Editieren in den InterAss Daten raten wir dringend ab. Verwenden Sie bitte die InterAss  Oberfläche !!

 

Pie 31.08.16


 
© 2018 FGH GmbH Mannheim. Alle Rechte vorbehalten.