Maison développement back-end Tutoriel Python Explication détaillée de Python utilisant le module cx_Oracle pour faire fonctionner la base de données Oracle

Explication détaillée de Python utilisant le module cx_Oracle pour faire fonctionner la base de données Oracle

May 07, 2018 am 11:47 AM
oracle python 操作

Cet article présente principalement l'utilisation par Python du module cx_Oracle pour faire fonctionner la base de données Oracle. Il analyse en détail le téléchargement et l'installation du module cx_Oracle, ainsi que la connexion à la base de données Oracle, l'exécution des instructions SQL, les procédures stockées et d'autres techniques d'exploitation connexes sous forme d'exemples. Les amis dans le besoin peuvent se référer à

Cet article décrit l'exemple d'utilisation de Python pour faire fonctionner la base de données Oracle à l'aide du module cx_Oracle. Partagez-le avec tout le monde pour votre référence. Les détails sont les suivants :

Paramètre ORACLE_SID. Ce paramètre est utilisé dans le système d'exploitation. Il décrit l'instance de base de données à laquelle nous souhaitons nous connecter par défaut. plusieurs instances sur une machine Ensuite, vous devez le modifier avant de pouvoir vous connecter via conn/as sysdba, car le nom d'instance par défaut est utilisé ici.

En bref, par exemple, vous vous appelez Xiao Ming, mais vous avez de nombreux surnoms. Tes parents t'appellent Xiao Ming, mais tes amis t'appellent tous par ton surnom.

Ici, vos parents sont l'instance oracle, Xiao Ming est le sid et le nom du service est votre surnom.

sid est utilisé pour distinguer chaque base de données d'une instance, et le nom du service est utilisé pour les liens externes. Ils peuvent être différents, alors faites attention au nom que vous obtenez et utilisez-le de manière appropriée, sinon des erreurs peuvent survenir lors de la connexion à distance à d'autres bases de données.

Préface

Il existe de nombreux modules fournis avec Python pour manipuler des fichiers. Nous pouvons lire les données du fichier et écrire les données dans le fichier après traitement. Mais pour la gestion et l’analyse des données, les bases de données sont encore plus professionnelles. Si Python peut être combiné avec une base de données, il peut combiner les avantages des deux et améliorer l’efficacité.

La base de données Oracle est utilisée au travail. Python possède un module cx_Oracle qui peut être connecté à Oracle. Pour utiliser cx_Oracle, vous devez d'abord le télécharger.

1. Téléchargez cx_Oracle

Python est un site officiel PyPI, qui possède une multitude de modules. cx_Oracle peut être téléchargé depuis PyPI. Ouvrez l'URL PyPI https://pypi.python.org/pypi et recherchez cx_Oracle pour trouver le module. Son adresse de téléchargement est http://cx-oracle.sourceforge.net/. Bien sûr, vous pouvez également le télécharger par d’autres moyens.

Vous pouvez l'utiliser après le téléchargement.

2. Processus d'utilisation

Le processus d'utilisation simple est le suivant :

① Référencez le module cx_Oracle
②. base de données
③ .Obtenir le curseur
④.Utiliser le curseur pour diverses opérations
⑤.Fermer le curseur
⑥.Fermer la connexion

Voici un exemple simple :

cx_Oracle.connect("Username/Password@Oracle Server IP/Oracle's SERVICE_NAME")

Obtenez le SERVICE_NAME d'Oracle :

su - oracle #Passer à l'utilisateur Oracle

env | grep ORACLE #Query variables d'environnement ORACLE

ORACLE_SID=benguo # benguo est SERVICE_NAME

import cx_Oracle                     #引用模块cx_Oracle
conn=cx_Oracle.connect('load/123456@localhost/ora11g')  #连接数据库
c=conn.cursor()                      #获取cursor
x=c.execute('select sysdate from dual')          #使用cursor进行各种操作
x.fetchone()
c.close()                         #关闭cursor
conn.close()                       #关闭连接
Copier après la connexion

Exemple :

#coding:utf-8
import cx_Oracle
def main():
  conn = cx_Oracle.connect("zebra/zebra@192.168.0.113/benguo")
  cur =conn.cursor()
  r= cur.execute("select * from userinfo")
  print
  print r.fetchone()
if __name__ == '__main__':
  main()
Copier après la connexion

Plusieurs usages

Les opérations de Python sur la base de données comprennent principalement deux aspects : l'un consiste à écrire des données et l'autre à lire des données. La mise en œuvre de ces deux aspects peut être réalisée via des instructions SQL ou des procédures stockées. Par conséquent, les principales utilisations de cx_Oracle sont :

① Exécuter des instructions SQL

② Appeler des procédures et des fonctions stockées.

4. Exécuter des instructions SQL

L'exécution d'instructions SQL est très simple, comme le montre l'exemple ci-dessus. Utilisez cursor.execute pour exécuter. Utilisez fetchone ou fetchall pour lire les résultats de l'exécution.

L'exemple suivant est une instruction Insert utilisant une liaison de variable.

import cx_Oracle
conn=cx_Oracle.connect('load/123456@loaclhost/ora11g')
c=conn.cursor()
x=c.execute('insert into demo(v) values(:1)',['nice'])
conn.commit();
c.close()
conn.close()
Copier après la connexion

La liaison de variable est la même que le SQL dynamique d'Oracle. Elle utilise deux points pour remplacer l'espace réservé, qui est : 1 dans le code, à copier. la variable. Passez simplement une liste, qui est ['nice'] dans le code. Combien y a-t-il de variables, combien de valeurs doivent correspondre à la liste et les nombres doivent être cohérents, sinon une erreur sera signalée.

Après l'exécution, vous pouvez utiliser l'une des méthodes de connexion connect.commit() pour valider la transaction.

5. Appeler les procédures et méthodes stockées

Saisir directement le code :

--存储过程代码:
CREATE OR REPLACE PROCEDURE P_DEMO(V1 IN VARCHAR2, V2 OUT VARCHAR2) IS
BEGIN
  V2 := V1;
END;
Copier après la connexion

#Python代码:
import cx_Oracle
conn=cx_Oracle.connect('load/123456@localhost/ora11g')
c=conn.cursor()
str1='nice'
str2='  '#需要有值,即len(str2)>=len(str1)
x=c.callproc('p_demo',[str1,str2])
print(str2)
c.close()
conn.close()
Copier après la connexion

appelle la procédure stockée en utilisant la méthode cursor.callproc. Dans la procédure stockée ci-dessus, la valeur d'une variable est de type OUT. En Python, lors de l'attribution d'une valeur à une variable de type OUT, la longueur de la variable ne peut pas être inférieure à celle de la procédure stockée.

--函数代码:
CREATE OR REPLACE function F_DEMO(V1 VARCHAR2) RETURN VARCHAR2 IS
BEGIN
  RETURN V1;
END;
Copier après la connexion

#Python代码:
import cx_Oracle
conn=cx_Oracle.connect('load/123456@localhost/ora11g')
c=conn.cursor()
str1='nice'
str2=c.callfunc('f_demo',cx_Oracle.STRING,[str1])
print(str2)
c.close()
conn.close()
Copier après la connexion

La méthode utilisée pour appeler la fonction est cursor.callfunc. La différence entre cela et l'appel d'une procédure stockée est que cela nécessite de spécifier le type de paramètres de transmission.

Fin

Grâce à cx_Oracle, les bases de données Python et Oracle peuvent communiquer entre elles, afin que les deux puissent se compléter mutuellement.

Par exemple, Python peut être utilisé comme outil de collecte de données. Vous pouvez obtenir des données à partir du Web et de fichiers, puis enregistrer les données dans une base de données Oracle pour une analyse plus approfondie des données.

Recommandations associées :

Python utilise la bibliothèque openpyxl pour modifier la méthode de données du tableau Excel

Python utilise le module de messagerie pour encoder et décoder les e-mails

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment importer une base de données Oracle Comment importer une base de données Oracle Apr 11, 2025 pm 08:06 PM

Méthode d'importation de données: 1. Utilisez l'utilitaire SqlLoader: Préparez les fichiers de données, créez des fichiers de contrôle et exécutez SqlLoader; 2. Utilisez l'outil IMP / EXP: les données d'exportation, les données d'importation. Astuce: 1. Chargeur SQL * recommandé pour les ensembles de Big Data; 2. La table cible doit exister et la définition de la colonne correspond; 3. Après l'importation, l'intégrité des données doit être vérifiée.

Comment vérifier la taille de l'espace de table d'Oracle Comment vérifier la taille de l'espace de table d'Oracle Apr 11, 2025 pm 08:15 PM

Pour interroger la taille de l'espace de table Oracle, suivez les étapes suivantes: Déterminez le nom de l'espace de table en exécutant la requête: sélectionnez Tablespace_name dans dba_tablespaces; Requête la taille de l'espace de table en exécutant la requête: sélectionnez SUM (Bytes) comme total_size, sum (bytes_free) comme disponible_space, sum (bytes) - sum (bytes_free) comme used_space à partir de dba_data_files où tablespace_

Comment créer une table dans Oracle Comment créer une table dans Oracle Apr 11, 2025 pm 08:00 PM

La création d'une table Oracle implique les étapes suivantes: Utilisez la syntaxe de la table Create pour spécifier les noms de table, les noms de colonne, les types de données, les contraintes et les valeurs par défaut. Le nom du tableau doit être concis et descriptif et ne doit pas dépasser 30 caractères. Le nom de la colonne doit être descriptif et le type de données spécifie le type de données stocké dans la colonne. La contrainte non nulle garantit que les valeurs nulles ne sont pas autorisées dans la colonne, et la clause par défaut spécifie les valeurs par défaut pour la colonne. Contraintes de clé primaire pour identifier l'enregistrement unique du tableau. La contrainte de clé étrangère spécifie que la colonne du tableau fait référence à la clé primaire dans un autre tableau. Voir la création des élèves de la table de l'échantillon, qui contient des clés primaires, des contraintes uniques et des valeurs par défaut.

Que faire si l'oracle ne peut pas être ouvert Que faire si l'oracle ne peut pas être ouvert Apr 11, 2025 pm 10:06 PM

Les solutions à Oracle ne peuvent pas être ouvertes comprennent: 1. Démarrer le service de base de données; 2. Commencez l'auditeur; 3. Vérifiez les conflits portuaires; 4. Définir correctement les variables d'environnement; 5. Assurez-vous que le pare-feu ou le logiciel antivirus ne bloque pas la connexion; 6. Vérifiez si le serveur est fermé; 7. Utilisez RMAN pour récupérer les fichiers corrompus; 8. Vérifiez si le nom du service TNS est correct; 9. Vérifier la connexion réseau; 10. Réinstaller le logiciel Oracle.

Comment résoudre le code brouillé dans Oracle Comment résoudre le code brouillé dans Oracle Apr 11, 2025 pm 10:09 PM

Oracle Bragled Les problèmes peuvent être résolus en vérifiant le jeu de caractères de la base de données pour s'assurer qu'ils correspondent aux données. Définissez le jeu de caractères client pour correspondre à la base de données. Convertir les données ou modifier les jeux de caractères de colonne pour faire correspondre les jeux de caractères de base de données. Utilisez des jeux de caractères Unicode et évitez les jeux de caractères mulabyte. Vérifiez que les paramètres de langue de la base de données et du client sont corrects.

Python vs C: applications et cas d'utilisation comparés Python vs C: applications et cas d'utilisation comparés Apr 12, 2025 am 12:01 AM

Python convient à la science des données, au développement Web et aux tâches d'automatisation, tandis que C convient à la programmation système, au développement de jeux et aux systèmes intégrés. Python est connu pour sa simplicité et son écosystème puissant, tandis que C est connu pour ses capacités de contrôle élevées et sous-jacentes.

Comment configurer les utilisateurs d'Oracle Comment configurer les utilisateurs d'Oracle Apr 11, 2025 pm 08:21 PM

Pour créer un utilisateur dans Oracle, suivez ces étapes: créez un nouvel utilisateur à l'aide de l'instruction Créer des utilisateurs. Accorder les autorisations nécessaires en utilisant la déclaration de subvention. Facultatif: utilisez l'instruction RESSOURCE pour définir le quota. Configurez d'autres options telles que les rôles par défaut et les espaces de table temporaires.

Comment afficher le nom d'instance d'Oracle Comment afficher le nom d'instance d'Oracle Apr 11, 2025 pm 08:18 PM

Il existe trois façons d'afficher les noms d'instance dans Oracle: utilisez le "SQLPlus" et "SELECT INSTRESS_NAME FROM V $ INSTERNE;" Commandes sur la ligne de commande. Utilisez "Show instance_name;" Commande dans SQL * Plus. Vérifiez les variables d'environnement (Oracle_sid sur Linux) via le gestionnaire de tâches du système d'exploitation, Oracle Enterprise Manager ou via le système d'exploitation.

See all articles