1.安装Oracle客户端instantclient,版本需要是11.2及以上,在instantclient下创建新文件夹network/ADMIN,在ADMIN文件夹下创建文件tnsnames.ora,内容:
APPORCL =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = IP地址)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = helowin)
)
)
HOST:ip地址
PORT:端口
SERVICE_NAME:最好用sid
2.配置instantclient环境变量
变量名:NLS_LANG
变量值:AMERICAN_AMERICA.AL32UTF8
变量名:TNS_ADMIN
变量值:D:\Download\instantclient_12_1\network\ADMIN(ADMIN的目录)
这个时候可以通过python的cx_Oracle连接数据库
3.如果通过plsql远程数据库,在以上步骤的基础上,需要在plsql中进行设置:
打开plsql,点击tools->preferences,设置instantclient的目录及oci.dll目录,重启plsql
4.安装cx_Oracle,pip install cx_Oracle
5.操作数据库:
import cx_Oracle as oracle
# connect oracle database
# 用户名/密码@ip:端口号/oracle sid
db = oracle.connect('oracle信息')
# create cursor
cursor = db.cursor()
# execute sql
#cursor.execute('select sysdate from dual')
cursor.execute('select * from test_image')
# fetch data
data = cursor.fetchall()
print data
# close cursor and oracle
cursor.close()
db.close()