版本
python 3.6
cx_oracle 8.2.1
mysqlclient 1.4.4
ORACLE代码
连接
import cx_Oracle as cx
三种方式
第一
con = cx.connect('root', 'root123', '127.0.0.1:1521/orcl')
第二
con = cx.connect('root/[email protected]:1521/orcl')
第三
dsn = cx.makedsn('127.0.0.1', '1521', 'orcl')
connection = cx.connect('root', 'root123', dsn)
# -*- coding: utf-8 -*-
import cx_Oracle as cx # noqa
from common.log import logger
class Oracle(object):
def __init__(self, config):
self.db_ip = config.get('db_ip')
self.user = config.get('user')
self.password = config.get('password')
self.port = config.get('port', 1521)
self.database = config.get('database')
try:
logger.info('开始连接oracle数据库')
self.con = cx.connect(self.user, self.password, '%s:%s/%s' % (self.db_ip, self.port, self.database))
except Exception as e:
logger.exception('连接数据库异常:%s' % e)
self.con = None
def connect(self):
try:
logger.info('开始连接oracle数据库')
self.con = cx.connect(self.user, self.password, '%s:%s/%s' % (self.db_ip, self.port, self.database))
except Exception as e:
logger.exception('连接数据库异常:%s' % e)
self.con = None
return False
return True
def c_status(self):
# 连接状态
try:
return self.con.ping() is None, None
except Exception as e:
return