博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
windows连接oracle数据库
阅读量:5282 次
发布时间:2019-06-14

本文共 1152 字,大约阅读时间需要 3 分钟。

本以为很简单,结果发现还是有些坑啊

1. 安装cx_oracle

pip install cx_oracle

或者用whi文件,这样你能知道版本号那些https://www.lfd.uci.edu/~gohlke/pythonlibs/#cx_oracle 

2. 下载Instantclient

这个是关键的一步,一定要对应你的cx_oracle版本,比如上面我是12的,所以下载的instantclient_12_1 然后解压,然后解压将其中的oci.dll拷贝到$Python_Home 或者 $Python_Home\Lib\site-packages 目录下,注意一定要版本一致,否则会报ImportError: DLL load failed: 找不到指定的模块。

3.虽然这样是可以使用cx_Oracle了,但是实际操作数据库的时候可能会出现cx_Oracle.InterfaceError: Unable to acquire Oracle environment handle这个错误,解决方法是拷贝oci.dll, oraociei12.dll, oraocci12.dll到site-package中。另外一种方法是为instantclient12c设置环境变量,这样就不用拷贝dll文件了

 

参考博客

http://blog.csdn.net/longxj04/article/details/64922138 

import cx_Oracle import os import sys import pandas as pd reload(sys) sys.setdefaultencoding('utf8') os.environ['NLS_LANG'] = 'SIMPLIFIED CHINESE_CHINA.AL32UTF8' username = '**' password = '**' tns = '**:**/ORCL' conn = cx_Oracle.connect(username,password,tns) cursor = conn.cursor() cursor.execute('select * from STUDENT') result = cursor.fetchall() datas = pd.DataFrame(result) print datas cursor.close() conn.close() 完了又遇到一个很坑的事情,sql里面有中文一直报错,我以为是编码问题,结果是sql里面出现的中文要用双引号而不能用单引号。。。。

 

转载于:https://www.cnblogs.com/fionacai/p/7976860.html

你可能感兴趣的文章
编程:对经验世界的析构与建构
查看>>
Openstack api 学习文档 & restclient使用文档
查看>>
vim linux下查找显示^M并且删除
查看>>
poj100纪念
查看>>
ExtJs4 笔记(5) Ext.Button 按钮
查看>>
把execl导入到数据库中
查看>>
阿里云人脸比对API封装
查看>>
如何将数据库中的表导入到PowerDesigner中(转)
查看>>
汇编总结一
查看>>
html5-表单常见操作
查看>>
String = ""和String = null的区别
查看>>
C#测试题若干,都是基础阿
查看>>
NetWork——关于TCP协议的三次握手和四次挥手
查看>>
An easy problem
查看>>
MauiMETA工具的使用(一)
查看>>
LeetCode: Anagrams 解题报告
查看>>
用cookie登录慕课网络教学中心刷评论
查看>>
c# 使用ICSharpCode.SharpZipLib.dll实现文件压缩并返回
查看>>
【Laravel】 常用的artisan命令
查看>>
Qt 中获取本机IP地址
查看>>