# 如果报错参考的资料

https://blog.csdn.net/white_xuqin/article/details/82878860

场景再现:

python-cx_oracle报错"DatabaseError: DPI-1047: 64-bit Oracle Client library cannot be loaded: "

解决方案:

一、检查本地是否安装Oracle,如果安装,检查版本是否和python一样都,都是64位。

二、如果本地没有安装Oracle,则需要安装。一下为安装方式:

我们考虑安装Oracle Instant Client(轻量级客户端,占用空间极少)

安装包下载地址:http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html

下载instantclient-basic-windows.x64-11.2.0.4.0(或者相近的版本)即可

具体安装步骤:

1、将下载的压缩包,放到目录 E:\Oracle下,解压,生成instantclient_11_2文件夹,即:E:\Oracle\instantclient_11_2

2、修改系统变量

1> 将E:\Oracle\instantclient_11_2添加到系统变量PATH中

2> 新增系统变量

NLS_LANG=AMERICAN_AMERICA.WE8MSWIN1252   -->> 服务器端字符集

TNS_ADMIN=E:\Oracle\instantclient_11_2       -->> 指定tnsnames.ora所在位置

注意:修改系统变量之后,要检查一下是否生效,如果没有生效,则多试几次,实在不行则重启电脑。

3、在E:\Oracle\instantclient_11_2 下新建tnsnames.ora配置文件,内容如下:

orcl =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.102)(PORT = 1521))

)

(CONNECT_DATA =

(SERVER = DEDICATED)

(SERVICE_NAME = testdb)

)

)

4、重启Pycharm(必须重启,否则还是会报错)
---------------------
作者:white_xuqin
来源:CSDN
原文:https://blog.csdn.net/white_xuqin/article/details/82878860
版权声明:本文为博主原创文章,转载请附上博文链接!

import cx_Oracle                                                #引用模块cx_Oracle
conn=cx_Oracle.connect('账号/密码@192.168.***.***:1521/数据库名') #连接数据库 cursor = conn.cursor () try:
# 解析sql语句
# cursor.parse("select * dual")
pass
# 捕获SQL异常
except cx_Oracle.DatabaseError as e:
print(e) # ORA-: 未找到要求的 FROM 关键字 # 执行sql 语句
cursor.execute ("select * from EKP_PRODUCTIVITY_SL") for row in cursor:
print(row) c.close() #关闭cursor
conn.close()

python -- 连接 orclae cx_Oracle的使用的更多相关文章

  1. python -- 连接 orclae cx_Oracle的使用 二

    转:https://www.cnblogs.com/cyxiaer/p/9396861.html 必需的Oracle链接库的下载地址:https://www.oracle.com/technetwor ...

  2. python 连接oracle -- sqlalchemy及cx_Oracle的使用详解

    python连接oracle -- sqlalchemy import cx_Oracle as orcl import pandas as pd from sqlalchemy import cre ...

  3. python 连接 Oracle 乱码问题(cx_Oracle)

    用python连接Oracle是总是乱码,最后发现时oracle客户端的字符编码设置不对. 编写的python脚本中需要加入如下几句: import os os.environ['NLS_LANG'] ...

  4. windows下python连接oracle数据库

    1.首先安装cx_Oracle包2.解压instantclient-basic-windows.x64-11.2.0.4.0.zip到c:\oracle3.拷贝instantclient_11_2下所 ...

  5. Python连接Oracle数据查询导出结果

    python连接oracle,需用用到模块cx_oracle,可以直接pip安装,如网络不好,可下载离线后本地安装 cx_oracle项目地址:https://pypi.org/project/cx_ ...

  6. python 连接 oracle 统计指定表格所有字段的缺失值数

      python连接oracle -- qlalchemy import cx_Oracle as co import pandas as pd from sqlalchemy import crea ...

  7. Python 连接 Oracle数据库

    1.环境设置 [root@oracle ~]# cat /etc/redhat-release CentOS release 6.9 (Final) [root@oracle ~]# python - ...

  8. Python 连接Oracle数据库

    连接:python操作oracle数据库  python——连接Oracle数据库 python模块:cx_Oracle, DBUtil 大概步骤: 1. 下载模块 cx_Oracle (注意版本) ...

  9. Python连接oracle数据库 例子一

    step1:下载cx_Oracle模块,cmd--pip install cx_Oracle step2: 1 import cx_Oracle #引用模块cx_Oracle 2 conn=cx_Or ...

随机推荐

  1. TensorFlow学习笔记(1)—— 基本概念与框架

    入门框架时的常见问题 学习框架的原因? 方便.易用 学习框架的哪些知识点? 掌握一个项目的基本流程,就知道需要学习哪些知识点了 迅速学习框架的方法 根据项目每块流程的需要针对性的学 可以看官方的入门教 ...

  2. jwt 0.9.0 系列目录

    jwt官网地址:https://jwt.io/ PS: 写此系列的时候,jjwt jar包版本是0.9.0 <dependency>    <groupId>io.jsonwe ...

  3. Java隐式类型转换和强制类型转换

    一.强制类型转换 char 和 整型之间的类型转换 char a7 = 'a'; System.out.println(a7); System.out.println( (int)a7 ); Syst ...

  4. MySQL连接使用

    在mysql查询中,我们会通过排序,分组等在一张表中读取数据,这是比较简单的,但是在真正的应用中经常需要从多个数据表中读取数据.下面就为大家介绍这种方式,链接查询join. INNER JOIN(内连 ...

  5. vue 关于子组件向父组件传值$emit触发无效问题

    先贴上代码 子组件代码 //子组件请求接口,用自己封装的axios getupdate(){ this.$post({ url:this.$apis.unitupdate, postType:'jso ...

  6. UI5-技术篇-JS函数eval动态执行

    <html lang="en"> <head> <meta charset="utf-8" /> <title> ...

  7. android 给ImageView设置路径

    ImageView是Android程序中经常用到的组件,它将一个图片显示到屏幕上. 在UI xml定义一个ImageView如下: public void onCreate(Bundle savedI ...

  8. UIAlertController 修改文字显示实现方法

    UIAlertController修改文字显示 不废话先上完整代码 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 UIAlertControll ...

  9. 前后端分离架构:Web实现前后端分离,前后端解耦

    一.前言 ”前后端分离“已经成为互联网项目开发的业界标杆,通过Tomcat+Ngnix(也可以中间有个Node.js),有效地进行解耦.并且前后端分离会为以后的大型分布式架构.弹性计算架构.微服务架构 ...

  10. php 执行大量sql语句 MySQL server has gone away

    php 设置超时时间单位秒 set_time_limit(3600);   php 设置内存限制ini_set('memory_limit', '1024M');   mysql服务端接收到的包的大小 ...