一,准备软件

(1)cx_Oracle

(2)instantclient

注:

(1)instantclient是Oracle客户端,plsql称为数据库第三方可视化工具,即便装了plsql也还是要装instantclient的!!!

(2)另外目前plsql的破解版只支持32位的instantclient,32位的instantclient连接64位的Oracle没有问题,但64位的Python却用不了!!!

(3)plsql连接Oracle需要配置instantclient中的tnsnames.ora,而Python连接Oracle不需要配置instantclient中的tnsnames.ora。

tnsnames.ora配置参考博文:https://blog.csdn.net/u010916338/article/details/81367551
二,版本

比如:

windows             64位

Python3.6           64位,对应Windows版本

Oracle11g           64位

instanceclient      64位,对应Windows版本(不用管Oracle是多少位)

cx_oracle             64位,对应Windows版本;且对应Python版本3.6;且对应Oracle版本11g
三,下载地址

instantclient-basic-windows.x64-11.2.0.4.0.zip

https://www.oracle.com/technetwork/cn/database/features/instant-client/index-092699-zhs.html

链接:https://pan.baidu.com/s/11Zy-_iMyjKCAllD-rz-VCQ
提取码:jtw9

cx_Oracle-5.3-11g.win-amd64-py3.6-2.exe

https://pypi.org/project/cx-Oracle/#files

链接:https://pan.baidu.com/s/1JD7Kip9GfrBJn8Rzn33qfg
提取码:m6kg

四,安装配置

(1)cx_Oracle-5.3-11g.win-amd64-py3.6-2.exe安装,一键到底。

(2)系统环境变量path中添加D:\instantclient_11_2
五,连接测试

import cx_Oracle as oracle
    db = oracle.connect('user/password@192.168.223.138:1521/service_name')
    user用户名;password密码;服务器地址+端口号;service_name服务名
    (注:在plsql连接Oracle的instanceclient中的tnsnames.ora中配置的有。但是Python连接Oracle不需要配置tnsnames.ora)
    cursor = db.cursor()
    cursor.execute('select *from student')
    data = cursor.fetchone()
    print(data)
    cursor.close()
    db.close()

https://zh.osdn.net/projects/sfnet_cx-oracle/releases/     for oracle cx_oracle下载地址

python 连接ORacle11g的更多相关文章

  1. 【初学python】使用python连接mysql数据查询结果并显示

    因为测试工作经常需要与后台数据库进行数据比较和统计,所以采用python编写连接数据库脚本方便测试,提高工作效率,脚本如下(python连接mysql需要引入第三方库MySQLdb,百度下载安装) # ...

  2. Entity Framework 6 Database-first连接Oracle11g

    Entity Framework 6 Database-first连接Oracle11g(图文细说) 本文发布地址:http://www.cnblogs.com/likeli/p/5577264.ht ...

  3. python连接mysql的驱动

    对于py2.7的朋友,直接可以用MySQLdb去连接,但是MySQLdb不支持python3.x.这是需要注意的~ 那应该用什么python连接mysql的驱动呢,在stackoverflow上有人解 ...

  4. paip. 解决php 以及 python 连接access无效的参数量。参数不足,期待是 1”的错误

    paip. 解决php 以及 python 连接access无效的参数量.参数不足,期待是 1"的错误 作者Attilax  艾龙,  EMAIL:1466519819@qq.com  来源 ...

  5. python 连接sql server

    linux 下pymssql模块的安装 所需压缩包:pymssql-2.1.0.tar.bz2freetds-patched.tar.gz 安装: tar -xvf pymssql-2.1.0.tar ...

  6. paip.python连接mysql最佳实践o4

    paip.python连接mysql最佳实践o4 python连接mysql 还使用了不少时间...,相比php困难多了..麻烦的.. 而php,就容易的多兰.. python标准库没mysql库,只 ...

  7. python连接字符串的方式

    发现Python连接字符串又是用的不顺手,影响速度 1.数字对字符进行拼接 s=""  #定义这个字符串,方便做连接 print type(s) for i in range(10 ...

  8. python连接zookeeper的日志问题

    用python连接zookeeper时,在终端里,一直会有zookeeper的日志冒出来,这样会很烦. -- ::,:(: Exceeded deadline by 11ms 解决方法是在连接后设置一 ...

  9. python 连接Mysql数据库

    1.下载http://dev.mysql.com/downloads/connector/python/ 由于Python安装的是3.4,所以需要下载下面的mysql-connector-python ...

随机推荐

  1. Computer Vision_33_SIFT: A novel point-matching algorithm based on fast sample consensus for image registration——2015

    此部分是计算机视觉部分,主要侧重在底层特征提取,视频分析,跟踪,目标检测和识别方面等方面.对于自己不太熟悉的领域比如摄像机标定和立体视觉,仅仅列出上google上引用次数比较多的文献.有一些刚刚出版的 ...

  2. django--模型字段引用

    如果内置字段不起作用,您可以尝试使用django-localflavor(文档),其中包含对特定国家和文化有用的各种代码片段. 此外,您可以轻松编写自己的自定义模型字段. 注意 从技术上讲,这些模型是 ...

  3. c# 写入文本文件

  4. Flink原理(五)——容错机制

    本文是博主阅读Flink官方文档以及<Flink基础教程>后结合自己理解所写,若有表达有误的地方欢迎大伙留言指出. 1.  前言 流式计算分为有状态和无状态两种情况,所谓状态就是计算过程中 ...

  5. ffmpeg常用命令-学习

    文章标题:FFmpeg常用命令合集 文章地址:https://blog.csdn.net/lemon_tree12138/article/details/99719520

  6. C++中与类有关的注意事项(更新中~~~)

    关于构造函数的调用次序,见下列代码 #include<iostream> using namespace std; class A { private: int x; public: A( ...

  7. k8s删除pod时,docker服务出现挂载点泄漏问题的解决

    k8s更新版本后,老的POD一直出现Terminating,多久都不能删除. 然后,进入具体的节点机器之后,查看日志输出如下类似: ERROR: driver "overlay" ...

  8. P1341 无序字母对[欧拉路]

    题目描述 给定n个各不相同的无序字母对(区分大小写,无序即字母对中的两个字母可以位置颠倒).请构造一个有n+1个字母的字符串使得每个字母对都在这个字符串中出现. 解析 毒瘤字符串读入 我就是不喜欢邻接 ...

  9. 一文读懂后缀自动机 Suffix_Automata

    原论文(俄文)地址:suffix_automata 原翻译(中文)地址:后缀自动机详解(DZYO的博客) Upd:强推浅显易懂(?)的SAM讲解 后缀自动机 后缀自动机(单词的有向无环图)--是一种强 ...

  10. pwn第一周

    源码 #include <stdio.h> #include <stdlib.h> #include <unistd.h> void setbufs() { set ...