每日10行代码63: python操作oracle数据库更新数据

2021年6月29日:修改了代码中一个中文符号的错误。

这两天要做一个文本相似度的事情,准备把数据存放到oracle数据库中,所以重新复习了下。

import cx_Oracle
import os
import sys

os.environ['NLS_LANG']='SIMPLIFIED CHINESE_CHINA.UTF8'
dsn_tns=cx_Oracle.makedsn('127.0.0.1',1521, service_name='odsdbcs')
db=cx_Oracle.connect('dbname','dbpassword',dsn_tns)


def update(fbzmc,data):
    d = [i for item in data for i in item]
    sql =f"update fbzmck set mc1='{d[0]}' , xsd1={d[1]} , mc2='{d[2]}' , xsd2={d[3]} , mc3='{d[4]}' , xsd3={d[5]} where fbzmc='{fbzmc}'"
    print(sql)
    cr2 = db.cursor()
    cr2.execute(sql)
    db.commit()


update('随州市万方园物流租赁有限公司',[('test1',90),('test2',80),('test3',99)])

大概就是匹配相关公司名称,然后把相似度最高的三位放到fbzmck(非标准名称库)这个表里面,上面实现了一个update操作,但是生成语句时不够优雅,需要一个个的去插值,下次试下有没有别的方法。


版权声明:本文为weixin_44981444原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。