importcx_OracleclassOracle_connect():def __init__(self,username,password,host_ip,port,instance_name,sql):''':param username: 数据库用户名
:param password: 数据库密码
:param host_ip: 数据库主机IP地址
:param port: 数据库主机端口
:param instance_name: 数据库实例名称
:param sql: 数据库执行SQL语句'''self.username=username
self.password=password
self.host_ip=host_ip
self.port=port
self.instance_name=instance_name
self.sql=sqldefget_data(self):try:
conn= cx_Oracle.connect('{}/{}@{}:{}/{}'.format(self.username,self.password,self.host_ip,self.port,self.instance_name) )#连接数据库字符串
cursor= conn.cursor() #使用cursor()方法获取操作游标
result=cursor.execute (self.sql) #执行SQL语句
data = cursor.fetchall() #取出数据库所有数据
cursor.close()
conn.close()return data #返回数据
except:print('\033[1;35m 执行失败:{}数据库连接失败!!! \033[0m!'.format(self.host_ip))defget_dic(self):try:
conn= cx_Oracle.connect('{}/{}@{}:{}/{}'.format(self.username,self.password,self.host_ip,self.port,self.instance_name) )#连接数据库字符串
cursor = conn.cursor() #使用cursor()方法获取操作游标
result=cursor.execute (self.sql) #执行SQL语句
index =cursor.description
cursor.close()
conn.close()return index #返回数据
except:print('\033[1;35m 执行失败:{}数据库连接失败!!! \033[0m!'.format(self.host_ip))defupdate_date(self,sql):try:
conn= cx_Oracle.connect('{}/{}@{}:{}/{}'.format(self.username,self.password,self.host_ip,self.port,self.instance_name) )#连接数据库字符串
cursor = conn.cursor() #使用cursor()方法获取操作游标
result=cursor.execute (sql) #执行SQL语句
cursor.execute("commit")
cursor.close()
conn.close()except:print('\033[1;35m 执行失败:{}数据库连接失败!!! \033[0m!'.format(self.host_ip))definsert_date(self,sql):try:
conn= cx_Oracle.connect('{}/{}@{}:{}/{}'.format(self.username,self.password,self.host_ip,self.port,self.instance_name) )#连接数据库字符串
cursor = conn.cursor() #使用cursor()方法获取操作游标
cursor.execute (sql) #执行SQL语句
cursor.execute("commit")
cursor.close()
conn.close()except:print('\033[1;35m 执行失败:{}数据库连接失败!!! \033[0m!'.format(self.host_ip))