python批量删除数据库记录_python cx_oracle批量插入查询,删除,update 操作oracle数据库…

见了很多写的很垃圾决定自己写

# coding=utf-8

import cx_Oracle

import os

import json

os.environ['NLS_LANG'] = 'SIMPLIFIED CHINESE_CHINA.UTF8'

"""python version 3.7"""

class TestOracle(object):

def __init__(self,user,pwd,ip,port,sid):

self.connect=cx_Oracle.connect(user+"/"+pwd+"@"+ip+":"+port+"/"+sid)

self.cursor=self.connect.cursor()

"""处理数据二维数组,转换为json数据返回"""

def select(self,sql):

list=[]

self.cursor.execute(sql)

result=self.cursor.fetchall()

col_name=self.cursor.description

for row in result:

dict={}

for col in range(len(col_name)):

key=col_name[col][0]

value=row[col]

dict[key]=value

list.append(dict)

js=json.dumps(list,ensure_ascii=False,indent=2,separators=(',',':'))

return js

def disconnect(self):

self.cursor.close()

self.connect.close()

def insert(self,sql,list_param):

try:

self.cursor.executemany(sql,list_param)

self.connect.commit()

print("插入ok")

except Exception as e:

print(e)

finally:

self.disconnect()

def update(self,sql):

try:

self.cursor.execute(sql)

self.connect.commit()

except Exception as e:

print(e)

finally:

self.disconnect()

def delete(self,sql):

try:

self.cursor.execute(sql)

self.connect.commit()

print("delete ok")

except Exception as e:

print(e)

finally:

self.disconnect()

if __name__ =="__main__":

test_oracle=TestOracle('SCOTT','pipeline','127.0.0.1','1521','orcl')

param=[('ww1','job003',1333,2),('ss1','job004',1444,2)]

#test_oracle.insert("insert into bonus(ENAME,JOB,SAL,COMM)values(:1,:2,:3,:4)",param)#也可以下面这样解决orc-1036非法变量问题

test_oracle.insert("insert into bonus(ENAME,JOB,SAL,COMM)values(:ENAME,:JOB,:SAL,:COMM)",param)

test_oracle1=TestOracle('SCOTT','pipeline','127.0.0.1','1521','orcl')

test_oracle1.delete("delete from bonus where ENAME='ss1' or ENAME='ww1'")

test_oracle3=TestOracle('SCOTT','pipeline','127.0.0.1','1521','orcl')

js=test_oracle3.select('select * from bonus')

print(js)

C:\Python37\python.exe C:/Users/Administrator/PycharmProjects/pytestframe/pyfoo/DbUtils/oracledb.py

插入ok

delete ok

[

{

"ENAME":"cdp",

"JOB":"jod_1234",

"SAL":1254,

"COMM":1

},

{

"ENAME":"cdp3",

"JOB":"job003",

"SAL":1333,

"COMM":2

},

{

"ENAME":"cdp4",

"JOB":"job004",

"SAL":1444,

"COMM":2

},

{

"ENAME":"cdp1",

"JOB":"job222",

"SAL":1235,

"COMM":2

}

]

Process finished with exit code 0


版权声明:本文为weixin_28987547原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
THE END
< <上一篇
下一篇>>