数据库重置数据

 1 import pymysql
 2 import yaml
 3 
 4 class Get_sql():
 5     def __init__(self):
 6         #连接数据库
 7         self.db = pymysql.connect(host='127.0.0.1', port=3306, user='root', password='**', db='book')
 8         self.cosor=self.db.cursor()
 9 
10     #清空表
11     def clear_sql(self,table_name):
12         sql='truncate {};'.format(table_name)
13         self.cosor.execute(sql)
14         self.db.commit()
15 
16     #插入数据
17     def insert_sql(self,table_name,table_data):
18         for key in table_data:
19             table_data[key]="'"+str(table_data[key])+"'"
20 
21         key=','.join(table_data.keys())
22         value=','.join(table_data.values())
23 
24         sql='insert into {}({}) values ({});'.format(table_name,key,value)
25         # sql=insert_sql='insert into '+table_name+'('+key+')'+'values'+'('+value+')'
26         self.cosor.execute(sql)
27         self.db.commit()
28 
29     def close(self):
30         self.db.close()
31 
32     def init_data(self,datas):
33         for table_name,data in datas.items():
34             self.clear_sql(table_name)
35             for d in data:
36                 self.insert_sql(table_name,d)
37         self.close()
38 
39 if __name__ == '__main__':
40     datas1={'test_api':[{'id':1,'user':'aabb','password':'123456'}]}
41 
42     # file=r'E:\python\envname\Scripts\imooc\test_aa\datas.yaml'
43     # with open(file,'r') as f:
44     #     datas1=yaml.load(f,Loader=yaml.FullLoader)
45     # print(datas1)
46 
47     Get_sql().init_data(datas1)

 

posted on 2019-07-13 11:01  cherry_ning  阅读(920)  评论(0)    收藏  举报

导航