python使用cx_oracle连接oracle数据库

1.注意

  1. cx_Oracle无法直接连接oracle,需要调用本地的oracle客户端对oracle进行操作

  2. python,cx_Oracle,oracle客户端的位数要一致

2.步骤

2.1.安装python

可以直接去python官网下载安装程序,也可以下载minconda进行安装,推荐使用minconda。

2.2.安装cx_Oracle

可以使用pip,如果安装的是minconda,可以使用conda进行安装

2.3.安装oracle客户端

参考:https://cx-oracle.readthedocs.io/en/latest/user_guide/installation.html#id1

下载:https://www.oracle.com/database/technologies/instant-client/winx64-64-downloads.html

下载basic版本的oracle实例客户端即可。尽量下载最新的版本,最新版可以连接11.2及之后的所有数据库(win7不支持19c)

解压:将下载的ZIP文件解压到C:\oracle中(也可以是其他任意位置)

配置环境变量:PATH中加入DLL文件的路径 C:\oracle\instantclient_19_8

3.代码

import cx_Oracle
# 如果2.3没有将客户端加入PATH环境变量,则可以在这里强制指定
# cx_Oracle.init_oracle_client(lib_dir=r"D:\oracle\instantclient_19_8")

with cx_Oracle.connect('username', 'password', "host:1521/db",
            encoding="UTF-8") as connection:
    cursor = connection.cursor()
    cursor.execute("insert into test01 (id,name) values (:1,:2)",
            (5,'monkey'))
    connection.commit()
posted @ 2020-08-30 15:53  monkey6  阅读(2536)  评论(0)    收藏  举报