import pymysql import os def GetName(url): Allname = [] dataname = os.listdir(url) for name in dataname: Allname.append(name) return Allname def splitData(name): result = os.path.splitext(name) return result def creatUrl(name): url = "C:\\Users\\libaiyi\\Desktop\\数据集工作\\APO\\APO-FASTA\\" + name return url # 打开数据库连接(ip/数据库用户名/登录密码/数据库名) db = pymysql.connect( host="localhost", password="961016", db="pdb", user="root" ) # 使用 cursor() 方法创建一个游标对象 cursor cursor = db.cursor() # 制造循环开始批处理,创建文件链接 # 拿到文件名 Allname = GetName(r'C:\Users\libaiyi\Desktop\数据集工作\APO\APO-PDB') # for name in Allname: # dataname=splitData(name) # url=creatUrl(name) # sql="insert into `pdb`.`apo`(name,pdb) values('%s','%s')" # sql=sql%(dataname[0],url) # # print(sql) # cursor.execute(sql) # db.commit() # 添加fasata文件路径 allname = GetName(r"C:\Users\libaiyi\Desktop\数据集工作\APO\APO-FASTA") notexsit=1 for fname in allname: aname = splitData(fname)[0] url = creatUrl(aname) sqlcheck="select * from `pdb`.`apo` where name='%s'" sqlcheck=sqlcheck%(aname) # print(sqlcheck) result=cursor.execute(sqlcheck) if result==1: sql = "update `pdb`.`apo` set `fasta`='%s' where name='%s'" sql = sql % (url, aname) # print(sql) cursor.execute(sql) db.commit() else: print("该数据不存在,第:%s 次",notexsit) notexsit=notexsit+1 # print(result) # sql = "insert into `pdb`.`apo`(fasta) values('%s') where name=`%s`" # print(sql) # 取得fasta文件路径 # 使用 execute() 方法执行 SQL 查询 # 关闭数据库连接 db.close()
12-23