From 3b09f9db94f66331322c1915057521d4f91f0b2f Mon Sep 17 00:00:00 2001 From: wangweiye7840 Date: Tue, 16 Apr 2024 16:45:35 +0800 Subject: [PATCH] =?UTF-8?q?sharesameusagesinDB=E6=9C=89=E9=97=AE=E9=A2=98?= =?UTF-8?q?=EF=BC=8C=E5=BE=85=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 工具v3/database_tools_2.py | 29 +++++++++++++++++++++++++++++ 工具v3/合并使用记录并排序.py | 14 ++++++++++++++ 2 files changed, 43 insertions(+) create mode 100644 工具v3/合并使用记录并排序.py diff --git a/工具v3/database_tools_2.py b/工具v3/database_tools_2.py index c403864c..fc759580 100644 --- a/工具v3/database_tools_2.py +++ b/工具v3/database_tools_2.py @@ -993,6 +993,35 @@ def GetSamePairs(prodict): #获取已标注的相同题目组 same_groups.append([id]+same) return(same_groups) #返回相同题目组, 每组由一些相同的题目构成 +def ShareSameUsagesinDB(id1,id2): #有问题, 待修改 + mydb = connect(hostname = "wwylss.synology.me", port = "13306", username="tikuuser", pwd="Kjmathds_2024", db = "tikutest") + mycursor = mydb.cursor() + sql = "SELECT ID,date,classname,diff FROM usages WHERE ID = (%s);" + val = (id1,) + mycursor.execute(sql,val) + id1_usages_list = mycursor.fetchall() + val = (id2,) + mycursor.execute(sql,val) + id2_usages_list = mycursor.fetchall() + for item in set(id1_usages_list)-set(id2_usages_list): + sql = "INSERT INTO usages (ID,date,classname,diff) VALUE (%s,%s,%s,%s);" + val = (id2,item[1],item[2],item[3]) + mycursor.execute(sql,val) + sql = "INSERT INTO logs (DATE,TIME,username,action,db_content) VALUE (%s,%s,%s,%s,%s);" + val = (GetDate(),GetTime(),get_git_username(),"分享使用数据",f"{id1} -> {id2}: {item[1]}\t{item[2]}\t{item[3]}") + mycursor.execute(sql,val) + for item in set(id2_usages_list)-set(id1_usages_list): + sql = "INSERT INTO usages (ID,date,classname,diff) VALUE (%s,%s,%s,%s);" + val = (id1,item[1],item[2],item[3]) + mycursor.execute(sql,val) + sql = "INSERT INTO logs (DATE,TIME,username,action,db_content) VALUE (%s,%s,%s,%s,%s);" + val = (GetDate(),GetTime(),get_git_username(),"分享使用数据",f"{id2} -> {id1}: {item[1]}\t{item[2]}\t{item[3]}") + mycursor.execute(sql,val) + mydb.commit() + mydb.close() + return 0 + + def ShareSameUsages(prodict,same_group): #对same_group中的所有题号共享使用记录 current_usages = [] for id in same_group: diff --git a/工具v3/合并使用记录并排序.py b/工具v3/合并使用记录并排序.py new file mode 100644 index 00000000..6d86bc46 --- /dev/null +++ b/工具v3/合并使用记录并排序.py @@ -0,0 +1,14 @@ +from database_tools_2 import * + +same_list = generate_same_list() +for id,same_id in same_list: + ShareSameUsagesinDB(id,same_id) + print(f"{id} 与 {same_id} 的使用记录分享完成") + + +# prodict = load_dict(prodictpath) +# same_groups = GetSamePairs(prodict) +# for sg in same_groups: +# ShareSameUsages(prodict,sg) +# SortUsages(prodict) +# save_dict(prodict,prodictpath) \ No newline at end of file