1、python环境安装mysql-connector:
python -m pip install mysql-connector
2、连接数据库
3、写函数,因为我这里插入数据的一个值是另一张表里查询出来的,所以先写一个查询函数,返回值;再写一个插入函数;最后调用函数
表里数据已更新
整体代码如下:
import mysql.connector
import random
#connect mysql
mydb = mysql.connector.connect(
host="10.*4.0.*",
user="*",
passwd="WF***",
database="mcs***"
)
# 返回数据库游标,用于操作数据库
mycursor = mydb.cursor()
def search_tagid():
sql="select cti.tag_id,cti.tag_name, cpti.parent_tag_code from content_tag_info cti left join content_parent_tag_info cpti on cti.parent_tag_id =cpti.parent_tag_id where cpti.parent_tag_code ='20211231';"
#查询标签下标签值id
mycursor.execute(sql)
myresult = mycursor.fetchall() #获取所有记录
tagid = myresult[0][0]
print(myresult)
print(tagid)
return tagid
#数据插表,循环n次
def insert_cust(sql_list):
try:
for sql in sql_list:
mycursor.execute(sql,sql_list[sql])
mydb.commit() # 数据表内容有更新,必须使用到该语句
except:
print("值重复了")
if __name__ == '__main__':
#tagid= search_tagid()
# print(tagid)
count = 0
while count < 3:
#标签值-商户表
count = count+1
sql1 = "insert into content_tag_cust(tag_id,user_cust_id,tag_source) values (%s,%s,%s)"
c_cust_id = '6665' + str(random.randint(100000000000, 999999999999))
val1 = (19573085391323138, c_cust_id ,"03") #19573085391323137 , 19573085391323138
# 标签值-门店表
sql2 = "insert into content_tag_shop(tag_id,shop_id,tag_source) values(%s, %s, %s)"
s_shop_id = '177147' + str(random.randint(100000000000, 999999999999))
val2 = ("19574070149414914", s_shop_id, "03") # 19574070149414913,19574070149414914
sql_list = {sql1:val1,sql2:val2}
insert_cust(sql_list)
print(c_cust_id,s_shop_id)
else:
print("结束了")
最后,其他地方看到的方法:
#如果需要批量的插入数据,就这样做
sql=“insert into cdinfo values(0,%s,%s,%s,%s,%s)”
#每个值的集合为一个tuple,整个参数集组成一个tuple,或者list
param=((title,singer,imgurl,url,alpha),(title2,singer2,imgurl2,url2,alpha2))
#使用executemany方法来批量的插入数据.这真是一个很酷的方法!
n=cursor.executemany(sql,param)
转载:https://www.cnblogs.com/fanks99/p/9713873.html
表里数据同时更新2条



