[PYTHON] [Einführung in cx_Oracle] (8.) Version cx_Oracle 8.0

Cx_Oracle wurde am 26. Juni 2020 (japanische Zeit) von 7,3 auf 8,0 aktualisiert. Nachfolgend finden Sie eine kurze Beschreibung der neuen Funktionen und Änderungen in 8.0. Es gibt nur ein größeres Versions-Upgrade und es enthält wichtige (und meiner Meinung nach) Änderungen. Unten entsprechen die Zahlen den [Versionshinweisen] von cx_Oracle (https://cx-oracle.readthedocs.io/en/latest/release_notes.html#version-8-0-june-2020).

1. Ende der Unterstützung für Python 2

Die unterstützte Python-Version ist 3.5 oder höher. Wenn Sie es mit Python2 verwenden möchten, müssen Sie 7.3 verwenden.

2. Änderung der ODPI-C-Version

cx_Oracle wird mit dem Oracle-Zugriffstreiber in OD-Sprache von OSS namens ODPI-C erstellt. Version 8.0 basiert auf ODPI-C 4.0.1.

3. Änderung der Typverwaltung

Es wurde wie folgt erheblich überprüft.

4. Fügen Sie cx_Oracle.init_oracle_client () hinzu

Eine Funktion cx_Oracle.init_oracle_client () wurde hinzugefügt, um die Oracle Client-Bibliothek zu initialisieren.

5. Ändern Sie die Standardkodierung

In 7.3 war es None, aber in 8.0 wurde es UTF-8. Die Zeichensatzspezifikation der Umgebungsvariablen NLS_LANG wird ignoriert.

6. Fügen Sie der Soda Document-Klasse eine Methode hinzu

Dem SodaCollection-Objekt wurden die Methoden save (), saveAndGet () und truncate () hinzugefügt. Oracle Client 20 oder höher ist erforderlich, um diese Funktionen nutzen zu können.

7. Fügen Sie SodaOperation.fetchArraySize () hinzu

SodaOperation.fetchArraySize () hinzugefügt, um die Anzahl der SODA-Dokumentabrufe festzulegen. Oracle Client 19.5 oder höher ist erforderlich, um diese Funktion nutzen zu können.

8. Fügen Sie Cursor.prefetchrows hinzu

Cursor.prefetchrows zu Prefetch-Ergebnismengen hinzugefügt.

9. Vermeiden von Roundtrips, die mit dem ersten Durchlauf von Connection.version verbunden sind

Wir fügen einen neuen Modus hinzu, um den Roundtrip zu vermeiden, der mit dem ersten Durchlauf von Connection.version einhergeht, um die Datenbankversionsnummer zu erhalten. Oracle Client 20 oder höher ist erforderlich, um diese Funktion nutzen zu können.

10. Unterstützt PFILE

Unterstützung für das Starten einer Datenbank mit PFILE hinzugefügt. Bis 7.3 wurde nur SPFILE unterstützt.

11. Pufferüberlauf in Cursor.getbatcherrors () behoben

Es wurde ein Problem behoben, durch das Cursor.getbatcherrors () einen Pufferüberlauf verursachte, wenn der Offset 65536 überschritt.

12. Ändern Sie das Verhalten von Cursor.lastrowid

Geändert, sodass kein Fehler auftritt, wenn Cursor.lastrowid nach Ausführung der Anweisung INSERT ALL ausgeführt wird.

13. Alex Henries Pull-Anfrage annehmen

Es enthält hauptsächlich 6 Pull-Anforderungen für Codeverbesserungen (z. B. die Verbesserung der redundanten Codierung).

14. Verhalten des an eine boolesche Variable gebundenen Python-Objekts

An boolesche Variablen gebundene Python-Objekte werden jetzt in True / False konvertiert, je nachdem, ob sie in der Python-if-Anweisung als True oder False betrachtet werden. Bisher wurde nur True in True und die anderen in False konvertiert.

15. Andere Verbesserungen als der Hauptteilcode

Wir verbessern die Dokumentation, Muster und Tests.

Recommended Posts

[Einführung in cx_Oracle] (8.) Version cx_Oracle 8.0
[Einführung in cx_Oracle] (12.) DB-Ausnahmebehandlung
[Einführung in cx_Oracle] (17.) Datumsbehandlung
[Einführung in cx_Oracle] (16.) Umgang mit LOB-Typen
[Einführung in cx_Oracle] (5.) Umgang mit japanischen Daten
[Einführung in cx_Oracle] Übersicht über cx_Oracle
Serie: Einführung in den Inhalt von cx_Oracle
[Einführung in cx_Oracle] (10.) Aktualisieren Sie die DML-Anweisung und die DDL / DCL-Anweisung
Einführung in MQTT (Einführung)
Einführung in Scrapy (1)
Einführung in Scrapy (3)
Erste Schritte mit Supervisor
Einführung in Scrapy (2)
[Linux] Einführung in Linux
[Cx_Oracle Primer] (Teil 3) Grundlagen zum Durchsuchen von Tabellen
[Einführung in cx_Oracle] (Teil 7) Umgang mit Bindevariablen
Einführung in Lightning Pytorch
Erste Schritte mit Web Scraping
Einführung in EV3 / MicroPython
Einführung in die Python-Sprache
Einführung in die TensorFlow-Bilderkennung
Einführung in OpenCV (Python) - (2)
Einführung in PyQt4 Teil 1
[Einführung in cx_Oracle] (15.) Erstellen einer Ergebnismenge in einem anderen Format als tapple
Einführung in die Abhängigkeitsinjektion
Einführung in Private Chainer
Einführung in das maschinelle Lernen
[Einführung in cx_Oracle] (Teil 11) Grundlagen der PL / SQL-Ausführung
[Einführung in cx_Oracle] (13.) Verbindung über Verbindungspool (Client-Seite)
AOJ Einführung in die Programmierung Thema Nr. 1, Thema Nr. 2, Thema Nr. 3, Thema Nr. 4
Einführung in das elektronische Papiermodul
Einführung in den Wörterbuch-Suchalgorithmus
[Einführung in cx_Oracle] (Teil 6) Zuordnung von DB- und Python-Datentypen
Einführung in die Monte-Carlo-Methode
[Lernmemorandum] Einführung in vim
Einführung in PyTorch (1) Automatische Differenzierung
opencv-python Einführung in die Bildverarbeitung
Einführung in Python Django (2) Win
Einführung in das Schreiben von Cython [Notizen]
Einführung in Private TensorFlow
Eine Einführung in das maschinelle Lernen
Eine super Einführung in Linux
AOJ Einführung in die Programmierung Thema Nr. 7, Thema Nr. 8
[Einführung in cx_Oracle] (Teil 4) Abrufen und Scrollen der Ergebnismenge
Einführung in die Anomalieerkennung 1 Grundlagen
Einführung in RDB mit sqlalchemy Ⅰ
[Einführung in Systre] Fibonacci Retracement ♬
Einführung in die nichtlineare Optimierung (I)
Einführung in die serielle Kommunikation [Python]
AOJ Einführung in die Programmierung Thema Nr. 5, Thema Nr. 6
Einführung in Deep Learning ~ Lernregeln ~
[Einführung in Python] <Liste> [Bearbeiten: 22.02.2020]
Einführung in Python (Python-Version APG4b)
Eine Einführung in die Python-Programmierung
Einführung in discord.py (3) Verwenden von Stimme
Einführung in die Bayes'sche Optimierung
Tiefe Stärkung des Lernens 1 Einführung in die Stärkung des Lernens