网站首页 > 技术文章 正文
- 安装cx_Oracle
- Python 连接oracle不仅需要安装cx_Oracle模块,还需要Oracle Client;在oracle官网上下载instantclient-basic,注意对应版本号,然后解压文件,把其中的oci.dll,oraocci12.dll,oraociei12.dll,oraons.dll(12是我下载的版本号)文件复制到Python安装目录\lib\site-packages下,然后再下载安装cx_Oracle模块
2.连接数据库
连接数据库有三种方式:
(1)用户名、密码和监听写在一起(user/passwd@host/orcl)
import cx_Oracle as db conn = db.connect('user/passwd@host/orcl')
(2)用户名、密码和监听分开(‘user’,‘passwd’,'host/orcl')
import cx_Oracle as db conn = db.connect('user','passwd','host/orcl')
(3)配置监听并连接(makedsn('host',1521,'orcl')
import cx_Oracle as db tns = db.makedsn('host','1521','orcl') conn = db.connect('user','passwd',tns)
3.创建cursor,执行sql语句
cur = conn.cursor() cur.execute('select * from table') result = cur.fetchall() #获取全部查询结果 re1 = cur.fetchone() #获取第一行查询结果,没执行一次,游标就从表中第一条数据移动到下一条,即再执行的时候就得到第二条数据,第三次执行的时候就得到第三条数据;
4.关闭游标,关闭连接
cur.close() conn.close()
操作整体流程是:
import cx_Oracle # 导入库 conn = cx_Oracle.connect('user','passwd','host/orcl') #连接数据库 cur = conn.cursor() #创建游标 sql = 'select /insert/delete .......' #sql语句 cur.execute(sql) #执行sql语句 result = cur.fetchall()/fetchone() #获取数据 cur.close() #关闭游标 conn.close() #关闭数据库
如果查询出来的结果有乱码问题,python源文件的字符集密码和oracle不一致,可以在建立连接前添加:
os.environ['NLS_LANG'] = 'SIMPLIFIED CHINESE_CHINA.AL32UTF8' 或者os.environ['NLS_LANG'] = 'AMERICAN_AMERICA.AL32UTF8'
该图为oracle的字符编码
猜你喜欢
- 2024-10-14 oralce用户的介绍 ora-01917:user or role
- 2024-10-14 查询所有用户的表,ORACLE下有三个视图
- 2024-10-14 Linux新手入门系列:linux下Oracle定时备份
- 2024-10-14 Oracle 设置RMAN备用用户 oracle rman全库备份
- 2024-10-14 oracle死锁介绍 oracle 死锁原因
- 2024-10-14 MySQL和Oracle相关 mysql和oracle的sql语句一样吗
- 2024-10-14 oracle账户被锁定怎么解锁 oracle账户已被锁定什么意思
- 2024-10-14 Oracle数据库使用攻略 oracle数据库使用教程
- 2024-10-14 Oracle学习笔记三:PL/SQL developer工具安装
- 2024-10-14 Oracle数数据库用户管理之用户与安全性(二)
你 发表评论:
欢迎- 最近发表
-
- 前端流行框架Vue3教程:13. 组件传递数据_Props
- 前端必看!10 个 Vue3 救命技巧,解决你 90% 的开发难题?
- JAVA和JavaScript到底是什么关系?是亲戚吗?
- Java和js有什么区别?(java和javascript的区别和联系)
- 东方标准|Web和Java的区别,如何选择这两个专业
- 前端面试题-JS 中如何实现大对象深度对比
- 360前端一面~面试题解析(360前端笔试)
- 加班秃头别慌!1 道 Vue 面试题,快速解锁大厂 offer 通关密码
- 焦虑深夜刷题!5 道高频 React 面试题,吃透 offer 稳了
- 2025Web前端面试题大全(整理版)面试题附答案详解,最全面详细
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端md5加密 (49)
- 前端路由 (55)
- 前端数组 (65)
- 前端定时器 (47)
- 前端懒加载 (45)
- 前端接口 (46)
- Oracle RAC (73)
- oracle恢复 (76)
- oracle 删除表 (48)
- oracle 用户名 (74)
- oracle 工具 (55)
- oracle 内存 (50)
- oracle 导出表 (57)
- oracle查询数据库 (45)
- oracle约束 (46)
- oracle 中文 (51)
- oracle链接 (47)
- oracle的函数 (57)
- mac oracle (47)
- 前端调试 (52)
- 前端登录页面 (48)
本文暂时没有评论,来添加一个吧(●'◡'●)