python连接Oracle数据库

原文链接:https://blog.csdn.net/qq_53174498/article/details/124236033

 

Python进行数据库连接基本操作
这里我们采用的是使用Oracle数据库进行相关操作
在连接数据库之间,应下载相应的工具包cx_Oracle,在你安装的Python文件夹中找到script,在路径栏点击输入cmd回车进入命令行输入

pip install cx_Oracle 

进行安装,工具包较小,下载较快,大概300kb。

安装好之后,打开Python,新建一个工作区。
1.引入该工具包,使用import关键词,输入

1 mport cx_Oracle

 

引入该工具包,运行看是否加载成功(结果区为>>空行),无其他内容),则表示加载成功;
2.建立与数据库的连接,创建一个数据库对象

对象名 = cx_Oracle.connect('用户名','密码','监听地址/数据库名')

 

注意:用户名密码及数据库名,是你在登录Oracle数据库图形界面工具PLSQL Developer时填写的内容,监听端口地址为电脑的监听端口地址(最后有查找方法)
3.创建一个游标来执行sql语句,

游标对象名 = 对象名.cursor()

4.通过建立SQL语句来进行操作数据库,SQL语句的语法规则同Oracle上的规则完全相同。

5.通过游标对象名调用execute()方法执行单条SQL语句。如:

游标对象名.execute(sql)

 

6.通过游标对象名调用executemany(sql,param)方法执行多条SQL语句。插入多条数据值时常用,每行的数据值应封装在一个元组内,再使用列表进行封装。如:

1 param = [(1,'张山',29)]
2 游标对象名.executemany(sql,param)

7.通过变量名调用fetchone()方法获取一条被执行的SQL查询语句的值。如:

1 变量名 = 游标对象名.execute(sql)
2 变量名.fetchone()

 

8.通过变量名调用fetchmany(int)方法获取一条被执行的SQL查询语句的多条值,int为指定查询数据的条数。如:

1 变量名 = 游标对象名.execute(sql)
2 变量名.fetchmany(int值)

 

9.通过变量名调用fetchall()方法获取一条被执行的SQL查询语句的全部值。如:

1 变量名 = 游标对象名.execute(sql)
2 变量名.fetchall()

 

10.当SQL语句为查询语句或者插入数据语句时,通过数据库对象引用commit()方法提交更新数据。如:

数据库对象名.commit()

 

11.当所有操作执行完之后,关闭游标的使用,即关闭后台指向,通过调用其close()方法。如:

游标对象名.close()

 

12.当所有操作执行完之后,关闭数据库的连接,通过数据库对象名调用其close()方法进行关闭。如:

数据库对象名.close()

 

小结,这些是连接使用数据库的最基本内容,当某条语句进行的多的时候,可以使用类进行封装,当使用时直接引入类,调用类中的函数块操作即可。
范例如下(创建数据库对象时填写自己对应的内容):

 1 import cx_Oracle
 2 conn = cx_Oracle.connect('system','123456','监听/orcl')
 3 cursor = conn.cursor()
 4 sql = """
 5 CREATE TABLE student (
 6 sid number primary key,
 7 sname varchar2(30),
 8 sage number
 9 )"""
10 sql1 = """insert into student values(:sid,:sname,:sage)"""
11 sql2 = """insert into student values('100004','赵六','24')""" 
12 sql3 = """select * from student"""
13 param = [(100001,'张三',19)]
14 param1 = [(100002,'李四',20),(100003,'王五',21)]
15 cursor.execute(sql)
16 print("执行成功")
17 cursor.execute(sql2)
18 cursor.executemany(sql1,param)
19 print("执行成功")
20 cursor.executemany(sql1,param1)
21 print("执行成功")
22 conn.commit()
23 s = cursor.execute(sql3)
24 print(s.fetchmany(3))
25 print("执行成功")
26 cursor.close()
27 conn.close()

 

电脑监听端口地址查找方法:win+r输入cmd回车,进入命令行输入netstat -a;,即可查看。
如觉得内容稍可,请留下你们的
————————————————
版权声明:本文为CSDN博主「人间理想云」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

posted @ 2022-07-08 10:41  EROEG  阅读(654)  评论(0编辑  收藏  举报