cx_Oracle
一、环境准备
- oracle11g
- python 3.10.1
- cx_Oracle 8.3.0
二、安装cx_Oracle
1、可以在pycharm中进行下载
- File/Settings/Project:项目名称/Python Interpreter/+,搜索cx_Oracle进行下载
2、Terminal窗口
pip install cx_Oracle
注:下载下来的python库必须要在$PythonProject/Lib/site-packages下
3、若还是没下载下来,可到官网进行下载
cx_Oracle下载
1、下载上图所示的.whl文件,python什么版本就下载什么版本,如py3.8下载cp3.8,
2、将.whl文件放到Lib/site_packages目录下
pip install .whl
三、对oracle进行操作
1、python连接oracle数据库的三种方式
#1用户名、密码、监听写在一起
import cx_Oracle
conn = cx_Oracle('username/password@ip:端口号/实例名')
#2用户名、密码、监听分开写
import cx_Oracle
conn = cx_Oracle('username','password','ip:端口号/实例名')
#3分两步写,配置监听并连接
import cx_Oracle
moniter = cx_Oracle.makedsn('ip',端口号,'实例名')
conn = cx_Oracle.connect('用户名','密码',moniter)
2、查询
import cx_Oracle
#打开连接
conn = cx_Oracle.connect('scott','scott','10.10.189.180:1521/orcl')
#打开游标
cur.curser()
#执行sql语句
cur.execute('select count(1) from emp')
#赋值
data = cur.fetchone()
#重新执行
cur.execute('select ename,empno,job from emp')
for i in range(data[0]):
a,b,c = cur.fentchone()
d = '我的名字是{},工号是{},工作是{}'.format(a,b,c)
print(d)
#关闭游标
cur.close()
#关闭连接
conn.close()
3、插入
import cx_Oracle
conn = cx_Oracle.connect('user/password@ip:端口号/实例名')
cur = conn.cursor()
cur.execute("select count(1) from user_tables t where t.table_name = 'TEST'")
count = cur.fetchone()
if count[0] == 0:
cur.execute("create table test values(id number,name varchar2(100))")
cur.execute("insert into test values(1,'秦始皇')")
cur.execute("insert into test values(2,'唐太宗')")
cur.execute("insert into test values(3,'宋太祖')")
conn.commit() #提交,若不提交则没有数据
cur.close()
conn.close()
上述就是对oracle数据库的基本操作
四、总结
-
这次安装遇到的最大问题就是cx_Oracle,在cmd窗口pip install cx_Oracle并且import
cx_Oracle是成功的,但是在pycharm报错。后来发现不是在一个项目下,所以把下载下来的cx_Oracle移动到本地项目的site-packages解决问题 -
python版本应小于等于3.10