python 2.7 数据连接

win32:

oracle 10g:

安装包:cx_oracle支持的版本和客户端一定要一致,否则就算安装正常了也会报"Unable to acquire Oracle environment handle"

instantclient_10_2.rar

cx_Oracle-5.1.2-10g.win32-py2.7.msi


安装:

1:解压instantclient_10_2.rar到oracle10g

2:如果你安装了oracle客户端则只用将解压后的目下下的oci.dll,oraocci10.dll,oraociei10.dll三个文件拷贝到 Python27\Lib\site-packages目录下即可

3:如果你没安装oracle客户端则需设置:

a)ORACLE_HOME=解压后的oracle10g 

b)添加tnsnames.ora,第一次安装时需手动创建此文件

样式如下

# tnsnames.ora Network Configuration File: $ORACLE_HOME\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.

TNS_SID=
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 1.1.1.1)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = testsid)
    )
  )


开发:

import cx_Oracle
#建立连接
tns_name=cx_Oracle.makedsn('1.1.1.1',1521,'testsid') #tns连接串自动组合,这个不知道是否可以抛弃tnsnames.ora呢
conn=cx_Oracle.connect(user_name,passwd,tns_name) #建立了连接
#取得游标
cursor=conn.cursor()
#执行sql
cursor.execute(query_sql)

#select操作
#excute sql: select sysdate from dual where 1=1  
#ret:(datetime.datetime(2014, 4, 18, 19, 44, 10),)
ret=cursor.fetchall() #fetchone一次取一条,无论一条还是全部,取完之后不可重复取

#非select操作所有执行的操作
conn.commit()  #提交变更

#关闭游标
cursor.close() #执行一次sql就关闭一次

#关闭连接
conn.close()







  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值