python对oracle数据库的操作
1 Oracle数据库
1.1 Oracle环境配置&客户端连接
1.1.1 下载安装Oracle绿色版客户端instantclient:
到oracle官网下载instantclient basic包,解压缩到E:\ProgramFile\instantclient;
1.1.2 设置环境变量:
- NLS_lANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK(注意中间有空格,这个如果不设,toad查询中文会是乱码)
- TNS_ADMIN= E:\ProgramFile\instantclient
- Path=...;E:\ProgramFile\instantclient
1.1.3 配置tnsnames.tns文件:
在E:\ProgramFile\instantclient下建立文件tnsnames.ora,将下面内容粘贴进该文件:
*** =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST= ***)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = ***)
)
)
注:图中红色部分根据自己需要进行更改。
1.1.4 配置PL/SQL Developer进行连接:
在tools/preference里,oracle-connection选项配置oracle home和oci library:
- oracle home:E:\ProgramFile\instantclient
- oci library:E:\ProgramFile\instantclient\oci.dll

配置完成,可以重启 plsql developer,输入正确的用户名和密码就可以连接啦~~~
1.2 python连接oracle数据库
1.2.1 安装cx_Oracle包:
http://cx-oracle.sourceforge.net/ 需要注意下版本,根据操作系统和已安装的python版本进行选择

自行选择版本,下载后直接执行即可

1.2.2 安装后的验证:
import cx_Oracle没有报错:

备注:如果import cx_Oracle 时报错提示找不到OCI.DLL,解决方法:到装了Oracle的机器上找一个,然后copy到Libsite-packages目录下即可。
1.3 Python连接oracle数据库的基本操作
1.3.1 创建数据库连接connect和关闭数据库连接close
创建数据库连接的三种方式:
方法一:用户名、密码和监听分开写
import cx_Oracle
db=cx_Oracle.connect('username/password@host/orcl')
db.close()
方法二:用户名、密码和监听写在一起
import cx_Oracle
db=cx_Oracle.connect('username','password','host/orcl')
db.close()
方法三:配置监听并连接
import cx_Oracle
tns=cx_Oracle.makedsn('host',1521,'orcl')
db=cx_Oracle.connect('username','password',tns)
db.close()
1.3.2 建立cursor并执行SQL语句:查询、更新、插入、删除
1.3.2.1 创建数据库连接,创建游标cursor,然后执行sql语句,执行完成后,关闭游标,关闭数据库连接
创建连接后,建立cursor,并执行SQL语句

1.3.2.2 插入、更新、删除操作后需要提交commit

python对oracle数据库的操作的更多相关文章
- python访问Oracle数据库相关操作
环境: Python版本:3.6.6 win系统:64位 Linux系统:64位 首先安装配置时,版本必须一致!包括:系统版本,python版本,oracle客户端的版本,cx_Oracle的版本! ...
- python——连接Oracle数据库
前言 Python自带的模块中有很多操纵文件的.我们可以把文件的数据读出来,经过处理还可以将数据写入文件中.但是对于数据的管理和分析来说,数据库还是专业一些.如果Python能和数据库结合在一起,那么 ...
- Python读写oracle数据库
最近项目中需要用到Python调用oracle实现读写操作,踩过很多坑,历尽艰辛终于实现了.性能怎样先不说,有方法后面再调优嘛.现在把代码和注意点记录一下. 1. 所需Python工具库 cx_Ora ...
- Python 连接Oracle数据库
连接:python操作oracle数据库 python——连接Oracle数据库 python模块:cx_Oracle, DBUtil 大概步骤: 1. 下载模块 cx_Oracle (注意版本) ...
- python链接oracle数据库以及数据库的增删改查实例
初次使用python链接oracle,所以想记录下我遇到的问题,便于向我这样初次尝试的朋友能够快速的配置好环境进入开发环节. 1.首先,python链接oracle数据库需要配置好环境. 我的相关环境 ...
- 【python】python连接Oracle数据库
python连接Oracle数据库 查看Oracle版本 select * from v$version 下载对应版本的InstantClient 下载网址 InstantClient 1.解压Ins ...
- Python 连接 Oracle数据库
1.环境设置 [root@oracle ~]# cat /etc/redhat-release CentOS release 6.9 (Final) [root@oracle ~]# python - ...
- ORACLE数据库误操作执行了DELETE,该如何恢复数据?
ORACLE数据库误操作执行了DELETE,该如何恢复数据? 原创 2016年08月11日 17:23:04 10517 作为一个程序员,数据库操作是必须的,但是如果操作失误,一般都会造成比较严重的后 ...
- eclipse利用sql语句对Oracle数据库进行操作
对Oracle数据库执行操作的sql语句中表名和列名都需用英文双引号("")括起来. 注(\为转义符) 1.插入数据 sql = "insert into \" ...
随机推荐
- SSD 固态硬盘,Trim指令 ,查看状态、开启、关闭
一说到SSD 固态硬盘,经常会看到Trim指令这个名词,那什么是Trim? Trim是什么? 为了解决硬盘降速的问题,微软联合各大SSD厂商开发了一个新技术——Trim.Trim指令也叫disab ...
- VMWare链接克隆 和 完整克隆
VMware Workstation 是使用最为广泛的虚拟机软件,用软件的方式模拟硬件环境.用户可以借助VMware Workstation的模拟出来的硬件,在当前的操作系统上安装N多个虚拟的操作系统 ...
- 传统餐饮O2O支付体系成难题
传统餐饮O2O支付体系成难题 网的数据化参考,使得门店运营更具科学性. 作为“易淘食”这样的订餐网站,主要依靠与餐厅分成 来获得利润.“根据每个餐厅合作情况不同,每一笔订单我们可获得5%-15%的佣金 ...
- e782. 排列JList中的项
By default, the items in a list are arranged vertically, in a single column, as in: item1 item2 ... ...
- e606. Determining Which Component or Window Has the Focus
// null is returned if none of the components in this application has the focus Component compFocusO ...
- java的GUI程序的基本思路是以JFrame为基础
JFrame – java的GUI程序的基本思路是以JFrame为基础,它是屏幕上window的对象,能够最大化.最小化.关闭. JPanel – Java图形用户界面(GUI)工具包swing中的面 ...
- Spring Boot Controller相应JSP页面 错误whitelabel error page
在学习SpringBoot显示JSP页面的时候出现了错误,Controller可以正常调用,但是JSP页面就是不能正常显示. whitelabel error page 解决:注释掉scope < ...
- ORA-00918: column ambiguously defined
今天遇到了一个Oracle的SQL问题:ORA-00918: column ambiguously defined 大致的意思就是字段名称不明确,可能存在同名的字段 SELECT * FROM (SE ...
- tRNAscan-SE 预测tRNA基因
tRNAscan-SE 软件可以根据输入的基因组序列,预测对应的tRNA的基因 在线的tRNAscan-SE的链接如下:http://lowelab.ucsc.edu/tRNAscan-SE/ 如下图 ...
- 有限状态机(FSM)的Java 演示
本文从简单的样例入手,逐步演变成很复杂的程序. 在简明 状态模式(5.8)中,状态之间的变换由外界控制,或者说.多种状态是切割的.无关的.状态模式最有趣的地方正是讨论其状态的变迁. 1.引子 空调(a ...