Die Oracle -Datenbank gilt als eine der beliebtesten relationalen Datenbanken. Dies liegt daran, dass es mit Funktionen für kleine bis massive Anwendungen gefüllt ist.
Es ist daher keine Überraschung, dass Sie auf ein Szenario stoßen, in dem Sie eine Python -Anwendung mit einer Oracle -Datenbank verbinden müssen.
Über diesen Beitrag verstehen Sie die Grundlagen der Verbindung einer Python -Anwendung mit der Schnittstelle cx_oracle mit einer Oracle -Datenbank.
Was ist cx_oracle?
Cx_oracle ist ein kostenloses und open-Source-Python-Modul, mit dem Sie eine Python-Anwendung mit einer Oracle-Datenbank verbinden können. Das Modul entspricht den Spezifikationen der Python -Datenbank -API.
Sie können den Quellcode für das Modul in der unten definierten Ressource überprüfen:
https: // github.com/oracle/python-cx_oracle
Anforderungen
Um diesem Tutorial zu folgen, benötigen Sie Zugang zu Folgendem:
Sie können auch eine Remote -Oracle -Datenbankinstallation verwenden. Denken Sie daran, dass Sie möglicherweise die Anmeldeinformationen für den Zielserver benötigen.
Schritt 1 - Einrichten eines Datenbankbenutzers
Der erste Schritt besteht darin, einen neuen Datenbankbenutzer für Ihre Python -Anwendung einzurichten. Sie können diesen Schritt überspringen, wenn Sie bereits über einen vorhandenen Datenbankbenutzer verfügen, den Sie verwenden möchten.
Obwohl dieser Schritt keine Voraussetzung ist, ist es gut, die Anwendung auf eine bestimmte Datenbank und Erlaubnis im Falle eines Sicherheitskompromisses zu beschränken.
Starten Sie mit dem Befehl SQL Plus wie gezeigt:
$ sqlplusGeben Sie als nächstes den Benutzernamen für den privilegierten Benutzer ein, mit dem Sie eine Verbindung herstellen möchten. Auf diese Weise werden Sie für ein Passwort aufgefordert, das Sie während Ihrer Datenbankinstallation definiert haben.
Geben Sie den Benutzernamen: sysdba ein
Passwort eingeben: **********
Sobald Sie angemeldet sind, sollten Sie in die PL/SQL -Hülle fallen gelassen werden als:
Angeschlossen:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - ProduktionSie können den obigen Befehl auch ausführen, um sich direkt bei PDB anzumelden:
SQLPLUS SYS/Passwort@pdborcl als sysdbaErsetzen Sie den Benutzernamen und das Passwort durch Ihre Zielanmeldeinformationen.
Führen Sie den folgenden Befehl nach dem Anmeldung aus, um einen Benutzer zu erstellen.
SQL> User LinuxHint erstellen;Ändern Sie den erstellten Benutzer und setzen Sie die Zieleigenschaften wie Tablespace und Quotenlimit fest.
SQL> User LinuxHint ändernDie obige Abfrage legt den Standard -Tabellenbereich, den temporären Tablespace bzw. das Quotenlimit des erstellten Benutzers fest.
Geben Sie schließlich die erforderlichen Berechtigungen an den erstellten Benutzer wie gezeigt:
SQL> Grant Create Tabelle,Die obige Abfrage gewährt der Benutzerberechtigung, verschiedene Datenbankobjekte wie Tabellen, Ansichten, Prozeduren, Auslöser, materialisierte Ansichten, Sequenzen usw. zu erstellen.
Setzen Sie schließlich ein Passwort für den Zielbenutzer als:
Sql> user linuxHint nach Passwort identifiziert;Sie können dann die SQL Plus -Sitzung beenden und mit dem nächsten Abschnitt fortfahren.
Schritt 2 - Installieren des CX_ORACLE Python -Moduls
Der nächste Schritt besteht darin, das CX_ORACLE -Modul in Python einzurichten und zu installieren. In diesem Schritt müssen Sie Python und Pip auf Ihrem Computer installieren lassen.
Überprüfen Sie unsere Tutorials zum Thema, um mehr zu erfahren.
Führen Sie den PIP -Befehl aus:
Python3 -m PIP Installieren Sie CX_ORACLE - -UpgradeNach dem Einrichten können wir mit unserer Anwendungskonfiguration fortfahren.
Schritt 3 - Anwendungsaufbau
Erstellen Sie zunächst das übergeordnete Verzeichnis, um Ihren Anwendungscode zu speichern:
$ mkdir orclpyNavigieren Sie in das erstellte Verzeichnis und definieren Sie eine neue db_config.PY -Datei. Dies wird verwendet, um die Datenbankkonfiguration zu speichern.
$ cd orclpy && touch db_config.pyBearbeiten Sie die db_config.PY -Datei mit Ihrem bevorzugten Texteditor und fügen Sie die Datenbankkonfigurationsinformationen hinzu, wie im folgenden Beispiel gezeigt:
$ vim db_config.pyKonfigurationsinformationen:
User = 'LinuxHint'Die Konfigurationsdatei enthält Informationen, die sich beim Server anmelden, um sich anzumelden. Der Benutzer und die Passwörter beziehen sich auf den Benutzer, den wir in Schritt 1 erstellt haben.
Der DSN definiert den Datenquellennamen, der den Server -Hostnamen und den Namen der Pluggable -Datenbank enthält. In diesem Fall pdborcl1.
Schritt 4 - Verbindung zur Datenbank herstellen
Sobald Sie die Konfiguration des Datenbanksatzes haben, können wir die Anwendung mit dem Server verbinden.
Erstellen Sie zunächst eine Datei, um Ihren Anwendungscode zu speichern:
$ touch main.pyBearbeiten Sie die Datei und fügen Sie den Code hinzu:
cx_oracle importierenWir beginnen mit dem Importieren des CX_ORACLE -Moduls und der DB_CONFIG -Datei im obigen Code.
Als nächstes wickeln wir den Verbindungsblock in einen Try-Catch-Block ein. Das Verbindungsobjekt wird in 'Conn' mit dem cx_oracle gespeichert.Funktion verbinden.
Wenn die Verbindung erfolgreich ist, drucken wir die Datenbankversion mit dem Conn aus.Ausführung. Wenn nicht, fangen wir den Fehler auf und drucken ihn.
Schließlich schließen wir die Verbindung mit dem Conn.Close () Funktion.
Wir können den Code als:
$ python3 main.pyDies sollte die Ausgabe als:
$ Python Main.pyAbschluss
Dies ist eine Diskussion über den Prozess der Verbindung Ihrer Python -Anwendung mit dem CX_ORACLE -Modul mit Ihrer Oracle -Datenbank.