温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

如何利用Python连接Oracle数据库

发布时间:2022-06-10 13:53:25 来源:亿速云 阅读:502 作者:iii 栏目:开发技术

这篇“如何利用Python连接Oracle数据库”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“如何利用Python连接Oracle数据库”文章吧。

这里我们采用的是使用Oracle数据库进行相关操作

在连接数据库之间,应下载相应的工具包cx_Oracle,在你安装的Python文件夹中找到script,在路径栏点击输入cmd回车进入命令行输入

 pip install cx_Oracle

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

安装好之后,打开Python,新建一个工作区。

1.引入该工具包,使用import关键词,输入

import 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语句。插入多条数据值时常用,每行的数据值应封装在一个元组内,再使用列表进行封装。如:

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

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

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

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

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

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

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

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

数据库对象名.commit()

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

游标对象名.close()

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

数据库对象名.close()

小结,这些是连接使用数据库的最基本内容,当某条语句进行的多的时候,可以使用类进行封装,当使用时直接引入类,调用类中的函数块操作即可。

范例如下(创建数据库对象时填写自己对应的内容):

import cx_Oracle
conn = cx_Oracle.connect('system','123456','监听/orcl')
cursor = conn.cursor()
sql = """
    CREATE TABLE student (
    sid number primary key,
    sname varchar2(30),
    sage number
    )"""
sql1 = """insert into student values(:sid,:sname,:sage)"""
sql2 = """insert into student values('100004','赵六','24')""" 
sql3 = """select * from student"""
param = [(100001,'张三',19)]
param1 = [(100002,'李四',20),(100003,'王五',21)]
cursor.execute(sql)
print("执行成功")
cursor.execute(sql2)
cursor.executemany(sql1,param)
print("执行成功")
cursor.executemany(sql1,param1)
print("执行成功")
conn.commit()
s = cursor.execute(sql3)
print(s.fetchmany(3))
print("执行成功")
cursor.close()
conn.close()

电脑监听端口地址查找方法:win+r输入cmd回车,进入命令行输入netstat -a;,即可查看。

以上就是关于“如何利用Python连接Oracle数据库”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI