【操作步骤】
1.搭建环境:
win7-64、python-3.7.3、Oracle客户端:instantclient
2.下载库包:
python -m pip install cx_Oracle
3.导入模块:
import cx_Oracle
4.建立连接:
db = cx_Oracle.connect(“username”,“password”,“hostname/service_name”)
5.创建游标:
cursor = db.cursor()
6.执行事务:
#执行SQL语句
cursor.execute(sql)
#获取一条结果
cursor.fetchone()
#获取全部结果
cursor.fetchall()
7.关闭资源
db.close()
import cx_Oracle
conn = cx_Oracle.connect("root","rootroot","192.168.110.110/orcl")
cursor = conn.cursor()
sql = "select * from T1"
cursor.execute(sql)
result = cursor.fetchall()
for row in result:
pass
conn.close()
以上步骤是标准步骤,但是需要一些小的处理技巧。如果你导入库之后直接建立连接,会报如下错误:
DatabaseError: DPI-1047: Cannot locate a 64-bit Oracle Client library: “The specified module could not be found”. See https://oracle.github.io/odpi/doc/installation.html#windows for help
如果出现这条报错,说明python和oracle客户端还是没有建立连接,需要将扩展包导入到python放包的目录,操作如下:
1.找到oracle客户端安装路径,复制三个扩展包,分别为:oci.dll、oraociei11.dll、oraocci11.dll
2.找到python的~/lib/site-packages/,粘贴三个扩展包
3.重新建立连接即可
同样,因为我电脑里面本身就有这些环境,所以并没有发生其他的错误,比较顺利。