python 连接oracle数据库:cx_Oracle

摘要:
注意:64位操作系统必须安装64位oracle客户端,否则会连接报错安装第三方库:cx_Oracle一、连接数据库的三种方式:1、cx_Oracle.connect('账号/密码@ip:端口/数据库实例名')2、cx_Oracle.connect('账号','密码','ip:端口/数据库实例名')3、tns=cx_Oracle.makedsn('ip','端口','数据库实例名')cx_Oracl

注意:64位操作系统必须安装64位oracle客户端,否则会连接报错

安装第三方库:cx_Oracle

一、连接数据库的三种方式:

1、cx_Oracle.connect('账号/密码@ip:端口/数据库实例名')

2、cx_Oracle.connect('账号', '密码', 'ip:端口/数据库实例名')

3、tns = cx_Oracle.makedsn('ip', '端口', '数据库实例名')
cx_Oracle.connect('账号', '密码', tns)

示例:

tns = cx_Oracle.makedsn("192.168.81.186","1521","utf8186")

oracle.connect("interconn","ios",tns)

python 连接oracle数据库:cx_Oracle第1张

二、操作数据与mysql(pymysql)基本一致,参考mysql

import cx_Oracle as oracle

conn=oracle.connect("interconn/ios@192.168.81.186:1521/utf8186")     #('账号/密码@ip:端口/数据库实例名')
cursor=conn.cursor()        #使用cursor()方法获取数据库的操作游标(游标是记录操作哪个库、表、字段、时间等信息)
try:
cursor.execute("select * from mp_log_load")      #SelectSql可以是其他数据库操作变量,执行sql语句,返回的是影响行数
OneData=cursor.fetchone()        #一条查询结果,返回类型为tuple
AllData=cursor.fetchall()          #所有查询结果,返回类型为tuple:((login_name1,passwd1,),(login_name2,passwd2),),可遍历
conn.commit()         #提交操作
cursor.close()        #关闭游标
conn.close()          #关闭数据库连接
except pymysql.Error as e:
print("mysql error %d:%s" %(e.args[0],e.args[1]))          #捕获异常(如数据库无法连接:ip、端口错误等)
conn.rollback()        #报错时回退
cursor.close()          #关闭游标
conn.close()          #关闭数据库连接

免责声明:文章转载自《python 连接oracle数据库:cx_Oracle》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇如何解决PC端和移动端自适应问题?Windows Server 2008 SP2与R2有什么区别下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

数据持久层

持久是相对于瞬时来说的,其实就是可以把数据固化在硬盘或者磁带一类可以保存很长时间的设备上,不像放在内存中一样断电就消失了。企业应用中数据很重要(各种订单数据、客户数据、库存数据之类的),比应用程序本身更重要,所以需要把数据持久化。持久化可以通过很多方式,写文件和数据库都可以。只是现在企业一般都会选择把数据持久化到数据库中,因为可以很方便的查询统计分析,但数...

Oracle 20c 新特性:原生的 JSON 数据类型(Native JSON Datatype)

墨墨导读:Oracle 在 12c(12.1.0.2)版本中引入了对JSON的支持,允许将JSON存储在数据库中的varchar2或LOB(CLOB或BLOB)中。这意味着,我们可以利用无模式设计模型所提供的灵活性来构建应用程序,但又能从Oracle数据库的强大功能中受益。 Oracle 在 12c(12.1.0.2)版本中引入了对JSON的支持,允许将...

自定义RDLC报表的数据集(手工编辑rdlc文件,配置数据集)

折腾了我一下午,终于是搞定了,记录下来。 若需要在VS2010中为.net 2.0的网站添加RDLC报表,需要手工编辑RDLC文件指定对应的数据集。因为VS2010采用了新的数据源设计向导,因此在旧的环境下无法应用设计向导添加配置相应的数据源、数据集,以及他们之间的关联关系。 具体步骤: 1.在App_Code下添加一个数据集,我这里起名为:LR.xsd,...

SQL批量添加数据库中所有用户数据表描述

--SQL批量添加数据库中所有用户数据表描述 --操作说明:请先准备一数据表为名称为tblist,表名字段tbname nvarchar(255),数据表描述字段chnname nvarchar(255),将所有已存在的数据表和对应描述添加到数据表tblist中 --脚本编写步骤:1、游标读取所有数据表名;2、读取指定数据表描述;3、判断指定数据表描述是否...

MySQL集群常见高可用方案(转)

1. 概述 我们在考虑MySQL数据库的高可用的架构时,主要要考虑如下几方面: 如果数据库发生了宕机或者意外中断等故障,能尽快恢复数据库的可用性,尽可能的减少停机时间,保证业务不会因为数据库的故障而中断。 用作备份、只读副本等功能的非主节点的数据应该和主节点的数据实时或者最终保持一致。 当业务发生数据库切换时,切换前后的数据库内容应当一致,不会因为数据缺...

Java基础-基本数据类型

Java中常见的转义字符: 某些字符前面加上代表了一些特殊含义:     :return  表示把光标定位到本行行首.     :next 表示把光标定位到下一行同样的位置.         单独使用在某些平台上会产生不同的效果.通常这两个一起使用,即: . 表示换行.     :tab键,长度上相当于四个或者是八个空格 Java中标识符规则: 演示标识...