Python使用cx_Oracle连接Oracle数据库
程序员文章站
2024-03-24 21:00:22
...
这玩意儿真没有mysql连接方便...
安装cx_Oracle
如果pip安装完不好用,就重启你的IDE或者直接打开官网下载安装,如果你使用的是pycharm就打开设置在图形化界面中搜索安装
pip install -i https://pypi.douban.com/simple cx_oracle
下载oci.dll
没有这个,无法连接oracle... 如果你用Navicat连接oracle也报错的话也可以下载这个解压出里面的目录放到Navicat程序根目录并在设置中配置好
代码
其中oci_dir 为你下载的文件解压出来的目录,目录里面应该有oci.dll文件
init 函数中的判断系统类型Linux下没测试,不好用就自己修改下
ORACLE_OCI_DIR为下列形式
ORACLE_OCI_DIR = 'E:\Projects\GitProject\Other\instantclient_12_2'
2018年6月22日更新下列代码中的错误
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# Date: 2018-06-22 09:41:08
import cx_Oracle
import platform
import os
import settings
class ConnectOracleDatabase(object):
def __init__(self):
self.user = settings.DB_USER
self.password = settings.DB_PASSWORD
self.ip = settings.DB_IP
self.port = settings.DB_PORT
self.service_name = settings.DB_SERVICE
self.oci_path = settings.ORACLE_OCI_DIR
sys_version = platform.architecture()
if sys_version[1] is not 'WindowsPE':
os.environ['LD_LIBRARY_PATH '] = self.oci_path
else:
os.environ['PATH'] = os.environ['PATH'] + ';' + self.oci_path
# 解决中文乱码问题
os.environ['NLS_LANG'] = 'SIMPLIFIED CHINESE_CHINA.UTF8'
self.db_conn = None
self.db_cursor = None
self.create_connect()
def create_connect(self):
try:
self.db_conn = cx_Oracle.connect(self.user, self.password,
'%s:%s/%s' % (self.ip,
self.port,
self.service_name))
self.db_cursor = self.db_conn.cursor()
except Exception as error:
print("Error creating database connection: %s" % str(error))
def exec_sql_command(self, sql_command):
query_result = self.db_cursor.execute(sql_command)
return query_result # 这里直接return查询对象,如果不需要就改到__init__中
def __del__(self):
try:
self.db_cursor.close()
self.db_conn.close()
except AttributeError as error:
print(str(error))
oracle_obj = ConnectOracleDatabase()
sql = "select * from CJ_USER"
res = oracle_obj.exec_sql_command(sql)
for i in res.description:
print(i)
转载于:https://www.jianshu.com/p/8f652835bb13
上一篇: CSS3的动画效果
下一篇: 点击展示/收起Animation
推荐阅读
-
Python使用cx_Oracle连接Oracle数据库
-
CX_ORACLE连接方法
-
cx_Oracle使用注意事项
-
python使用cx_oracle连接oracle数据库
-
python cx_Oracle基础使用方法
-
Python 使用 cx_Oracle 教程
-
python selenium抓取页面截图+连接oracle数据库 博客分类: python
-
ORACLE数据泵 expdp/impdp使用详解(转) 博客分类: 数据库数据库 oracle 开发
-
python selenium抓取页面截图+连接oracle数据库 博客分类: python
-
ORACLE数据泵 expdp/impdp使用详解(转) 博客分类: 数据库数据库 oracle 开发