python构造批量insert语句怎样实现?教你两种方法
Admin 2021-08-19 群英技术资讯 1312 次浏览
python构造批量insert语句怎样实现?insert语句是SQL语句中常用的语句,主要用来向表格中插入新的行。而一行行写入比较麻烦,下面我们就来看看使用python构造批量insert语句的方法,有需要的朋友可以参考。
INSERT INTO `bidprcu_dic_a`( `DIC_ID`, `DIC_TYPE_CODE`, `DIC_TYPE_NAME`, `DATA_DIC_CODE`, `DATA_DIC_NAME`, `PRNT_CODE`, `SRT`, `MEMO`,
`DATA_SOUC`, `RID`, `CRTER_ID`, `CRTER_NAME`, `CRTE_OPTINS_NO`, `CRTE_TIME`, `OPT_TIME`, `OPTER_ID`,
`OPTER_NAME`, `OPTINS_NO`, `UPDT_TIME`, `INVD_FLAG`) VALUES ('1', 'cert_type', '证件类型', '11', '营业执照', '', NULL, '', NULL, '', NULL, NULL, NULL, '2020-07-07 11:30:39',
NULL, NULL, NULL, NULL, '2020-07-07 11:30:39', '0');
#生成的目标insert语句 """ INSERT INTO `bidprcu_dic_a`( `DIC_ID`, `DIC_TYPE_CODE`, `DIC_TYPE_NAME`, `DATA_DIC_CODE`, `DATA_DIC_NAME`, `PRNT_CODE`, `SRT`, `MEMO`,
`DATA_SOUC`, `RID`, `CRTER_ID`, `CRTER_NAME`, `CRTE_OPTINS_NO`, `CRTE_TIME`, `OPT_TIME`, `OPTER_ID`, `OPTER_NAME`,
`OPTINS_NO`, `UPDT_TIME`, `INVD_FLAG`) VALUES ('1', 'cert_type', '证件类型', '11', '营业执照', '', NULL, '', NULL, '', NULL, NULL, NULL, '2020-07-07 11:30:39',
NULL, NULL, NULL, NULL, '2020-07-07 11:30:39', '0'); """ import uuid def create_uid(): return str(uuid.uuid1()) f =open('0524insert.txt','w') for i in range(1,3): DIC_ID=create_uid() DIC_TYPE_CODE = "cert_type" DIC_TYPE_NAME="证件类型" DATA_DIC_CODE="11" DATA_DIC_NAME="营业执照" PRNT_CODE="" SRT="NULL" CRTE_TIME="2020-07-07 11:30:39" UPDT_TIME="2020-07-07 11:30:39" INVD_FLAG="0" sql = "INSERT INTO bidprcu_dic_a(DIC_ID,DIC_TYPE_CODE,DIC_TYPE_NAME,DATA_DIC_CODE,DATA_DIC_NAME,PRNT_CODE,SRT,
CRTE_TIME,UPDT_TIME,INVD_FLAG) "\ +"VALUES" +"(" +"'"+DIC_ID+"'"+",'"+DIC_TYPE_CODE+"'"+",'"+DIC_TYPE_NAME+"'"+",'"+DATA_DIC_CODE+"'"+",
'"+DATA_DIC_NAME+"'"+",'"+PRNT_CODE+"'"+",'"+SRT+"'"+",'"+CRTE_TIME+"'"+",'"+UPDT_TIME+"'"+","+INVD_FLAG+""+")"+";" print(sql) f.write(sql) f.write("\n") f.close()
最终生成数据
INSERT INTO bidprcu_dic_a(DIC_ID,DIC_TYPE_CODE,DIC_TYPE_NAME,DATA_DIC_CODE,DATA_DIC_NAME,
PRNT_CODE,SRT,CRTE_TIME,UPDT_TIME,INVD_FLAG) VALUES('6b854a06-bcf9-11eb-8936-e454e805d291','cert_type','证件类型','11','营业执照','','NULL','2020-07-07 11:30:39','2020-07-07 11:30:39',0);
# 生成的目标insert语句 """ INSERT INTO `bidprcu_dic_a`( `DIC_ID`, `DIC_TYPE_CODE`, `DIC_TYPE_NAME`, `DATA_DIC_CODE`, `DATA_DIC_NAME`, `PRNT_CODE`, `SRT`, `MEMO`,
`DATA_SOUC`, `RID`, `CRTER_ID`, `CRTER_NAME`, `CRTE_OPTINS_NO`, `CRTE_TIME`, `OPT_TIME`, `OPTER_ID`, `OPTER_NAME`,
`OPTINS_NO`, `UPDT_TIME`, `INVD_FLAG`) VALUES ('1', 'cert_type', '证件类型', '11', '营业执照', '', NULL, '', NULL, '', NULL, NULL, NULL, '2020-07-07 11:30:39',
NULL, NULL, NULL, NULL, '2020-07-07 11:30:39', '0'); """ import uuid def create_uid(): return str(uuid.uuid1()) f = open('0524insert.txt', 'w') value = [] for i in range(1, 3): list = [] DIC_ID = list.append(create_uid()) DIC_TYPE_CODE = list.append("cert_type") DIC_TYPE_NAME = list.append("证件类型") DATA_DIC_CODE = list.append(11) DATA_DIC_NAME = list.append("营业执照") PRNT_CODE = list.append("") SRT = list.append("NULL") CRTE_TIME = list.append("2020-07-07 11:30:39") UPDT_TIME = list.append("2020-07-07 11:30:39") INVD_FLAG = list.append(0) print(list) a = value.append(list) c = str(list) print(c) c = c.replace("[", "(").replace("]", ")") print(c) sql = "INSERT INTO bidprcu_dic_a(DIC_ID,DIC_TYPE_CODE,DIC_TYPE_NAME,DATA_DIC_CODE,DATA_DIC_NAME,PRNT_CODE,
SRT,CRTE_TIME,UPDT_TIME,INVD_FLAG) " \ + "VALUES" + c + ";" print(sql) f.write(sql) f.write("\n") f.close()
注意:
1.在使用时修改range的值即可
2.在生成大批量数据时,可以考虑多线程
以上就是关于python构造批量insert语句的方法,大家可以参考,希望本文对大家学习python中对数据库的操作有帮助,想要了解更多python构造SQL语句的内容,大家可以继续关注其他相关文章。
文本转载自脚本之家
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
本章节将一些Python3基础语法整理成手册,方便各位在日常使用和学习是查阅,包含了编码、标识符、保留字、注释、缩进、字符串等常用内容。
这篇文章主要给大家分享的是python中自动化定位元素,那么python中自动化定位元素都有哪些?接下来会给大家介绍到的有find_element_by_id()、find_element_by_name()、find_element_by_class_name()、find_element_by_class_name()等等八种python自动化定位元素的用法,感兴趣的朋友就继续往下看吧。
这篇文章主要介绍了python数据结构之递归讲解,递归是解决问题的一种方法,它将问题不断地分成更小的子问题,直到子问题可以用普通的方法解决。通常情况下,递归会使用一个不停调用自己的函数,下面来看看文章对此的详细介绍吧
安装环境时,稍微不留神就会出现报错的情况。为了这群粗心的小伙伴,小编特意整理了解决办法,希望能够对大家有所帮助。
注:以下都是以公有为前提,私有方法只能在类内部调用,不需多讲。1、对象方法这种方法都有一个默认参数:self 这代表实例的这个对象def__init__(self):print("初始化对象")类是不能直接调用对象方法:classUser(object):name='zs'def__init__(self):
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008