[PYTHON] [Introduction à cx_Oracle] (Partie 2) Principes de base de la connexion et de la déconnexion à Oracle Database

Environnement de vérification

--Utilisation d'Oracle Cloud

Principes de base de la connexion à la base de données

Bien que non limité à cx_Oracle, vous avez besoin du nom d'utilisateur de la base de données à connecter, du mot de passe de cet utilisateur et des informations de destination de connexion (connecteur TNS ou EZCONNECT) pour vous connecter à Oracle Database. Ceux-ci doivent être préparés à l'avance. Dans cx_Oracle, vous pouvez vous connecter à la base de données en les spécifiant dans l'argument de la méthode appelée connect (). Il existe également un alias appelé connection (), que vous pouvez utiliser.

Par exemple, si le nom d'utilisateur est "scott", le mot de passe est "Tiger" et les informations de destination de connexion sont "db1", connection = cx_Oracle.connect("scott", "Tiger", "db1") Connectez-vous à la base de données en spécifiant le nom d'utilisateur dans le premier argument (nom de l'argument utilisateur), le mot de passe (nom de l'argument mot de passe) dans le deuxième argument et les informations de destination de connexion dans le troisième argument (nom de l'argument dsn). Je peux le faire. Même si les informations de destination de connexion sont au format EZCONNECT tel que "hostname1: 1521 / db1.oracle.com" connection = cx_Oracle.connect("scott", "Tiger", "hostname1:1521/db1.oracle.com") Et spécifiez-le simplement de la même manière. L'argument dsn n'est pas requis pour les connexions locales utilisant la variable d'environnement ORACLE_SID.

Cette méthode renvoie un objet Connection. Après cela, des opérations telles que l'émission de SQL seront effectuées sur l'objet Connection acquis (connexion variable dans l'exemple ci-dessus).

Principes de base de la déconnexion DB

Appelez la méthode close () de l'objet Connection. connection.close() Voici un exemple d'application qui se connecte à un DB, affiche les informations de version du DB de destination de connexion (deuxième ligne à partir du bas) et se déconnecte.

sample02a.py


#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import cx_Oracle

USERID = "admin"
PASSWORD = "FooBar"
DESTINATION = "atp1_low"

connection = cx_Oracle.connect(USERID, PASSWORD, DESTINATION)
print(connection.version)
connection.close()

Une connexion plus sécurisée grâce à la syntaxe with

La fermeture des ressources ouvertes est une règle de programmation. Cependant, en réalité, il est facile d'oublier la fermeture. Python fournit une syntaxe avec pour garantir que les ressources ouvertes sont fermées. Et cx_Oracle prend en charge la syntaxe with. En codant comme suit, vous pouvez fermer la connexion en toute sécurité.

sample02b.py


#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import cx_Oracle

USERID = "admin"
PASSWORD = "FooBar"
DESTINATION = "atp1_low"

with cx_Oracle.connect(USERID, PASSWORD, DESTINATION) as connection:
        print(connection.version)

modifier l'historique

Recommended Posts

[Introduction à cx_Oracle] (Partie 2) Principes de base de la connexion et de la déconnexion à Oracle Database
[Introduction à cx_Oracle] (Partie 11) Bases de l'exécution PL / SQL
[Introduction à cx_Oracle] (Partie 4) Récupération et défilement du jeu de résultats
[Introduction à cx_Oracle] (Partie 7) Gestion des variables de liaison
[Introduction à cx_Oracle] Présentation de cx_Oracle
[Python3] Connexion à Oracle Database et exécution de SQL [cx_Oracle]
[Introduction à cx_Oracle] (Partie 6) Mappage des types de données DB et Python
[Introduction to Data Scientists] Bases de Python ♬ Fonctions et classes
[Introduction to Data Scientists] Bases de Python ♬ Branchements conditionnels et boucles
[Introduction aux Data Scientists] Bases de Python ♬ Fonctions et fonctions anonymes, etc.
[Introduction au Data Scientist] Bases de Python ♬
[Introduction à cx_Oracle] (16ème) Gestion des types LOB
[Introduction à cx_Oracle] (5e) Gestion des données japonaises
[Introduction à cx_Oracle] (Partie 9) Mappage des types de données DB et Python (version 8 ou ultérieure)
Introduction à PyQt4 Partie 1
Accélération lors de la connexion de cx_Oracle à la base de données autonome
[Introduction à cx_Oracle] (13e) Connexion utilisant le pool de connexions (côté client)
[Introduction à cx_Oracle] (10e) Instruction Update DML et DDL / DCL
[Introduction à Scipy] Calcul de la courbe de Lorenz et du coefficient de Gini ♬
Apprentissage automatique pour apprendre avec Nogisaka 46 et Keyakizaka 46 Partie 1 Introduction
Introduction de DataLiner ver.1.3 et comment utiliser Union Append
Introduction à la détection des anomalies 1 principes de base
[Introduction à cx_Oracle] (8e) version de cx_Oracle 8.0
Introduction à Ansible Part «Inventaire»
Série: Introduction à cx_Oracle Contents
Introduction et astuces de mlflow.
Principes de base de Python x SIG (1)
Introduction à Ansible Part ④'Variable '
[Introduction à Data Scientist] Bases du calcul scientifique, du traitement des données et comment utiliser la bibliothèque de dessins graphiques graph Bases de Scipy
[Introduction à Data Scientist] Bases du calcul scientifique, du traitement des données et comment utiliser la bibliothèque de dessins graphiques graph Bases de Pandas
[Introduction à Data Scientist] Bases du calcul scientifique, du traitement des données et comment utiliser la bibliothèque de dessin de graphes ♬ Bases de Matplotlib
Résolution de l'introduction d'AOJ aux algorithmes et aux structures de données en Python -Partie1-
Introduction aux bases de Python de l'apprentissage automatique (apprentissage non supervisé / analyse principale)
Résolution de l'introduction d'AOJ aux algorithmes et aux structures de données en Python -Partie2-
Résolution de l'introduction d'AOJ aux algorithmes et aux structures de données en Python -Partie4-
[Introduction à Udemy Python3 + Application] 69. Importation du chemin absolu et du chemin relatif
[Introduction à l'application Udemy Python3 +] 12. Indexation et découpage des chaînes de caractères
Introduction à TensorFlow - Résumé de quatre règles et fonctions mathématiques de base
Résolution de l'introduction d'AOJ aux algorithmes et aux structures de données en Python -Partie3-
Principes de base de Python x SIG (3)
Introduction et mise en œuvre de JoCoR-Loss (CVPR2020)
Introduction à Ansible Partie 2 'Grammaire de base'
[Introduction à Python3 Jour 1] Programmation et Python
Introduction et mise en œuvre de la fonction d'activation
Introduction à Python Hands On Partie 1
Principes de base de Python x SIG (partie 2)
Introduction à Ansible Partie 1 Hello World !! '
[Introduction to Data Scientist] Bases du calcul scientifique, du traitement des données et comment utiliser la bibliothèque de dessins graphiques ♬ Construction d'environnement