python对oracle数据库的操作

1          Oracle数据库

1.1       Oracle环境配置&客户端连接

1.1.1          下载安装Oracle绿色版客户端instantclient:

到oracle官网下载instantclient basic包,解压缩到E:ProgramFileinstantclient;

1.1.2          设置环境变量:

  • NLS_lANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK(注意中间有空格,这个如果不设,toad查询中文会是乱码)
  • TNS_ADMIN= E:ProgramFileinstantclient
  • Path=...;E:ProgramFileinstantclient

1.1.3     配置tnsnames.tns文件:

在E:ProgramFileinstantclient下建立文件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:ProgramFileinstantclient
  • oci library:E:ProgramFileinstantclientoci.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

原文地址:https://www.cnblogs.com/dpf-learn/p/7908452.html