码迷,mamicode.com
首页 > 其他好文 > 详细

myaql功能封装代码及封装后的测试

时间:2019-10-01 22:41:28      阅读:146      评论:0      收藏:0      [点我收藏+]

标签:模块   sql   exce   hal   mysq   失败   HERE   database   color   

---恢复内容开始---

为了以后工作查询方便,特地将一些常用的代码,以博客形式储存下来,如果能帮助对有相同需求的朋友,甚是欣喜!
mysql与Python交互中的封装
1
#-*- coding: utf-8 -*- 2 ‘‘‘ 3 作者:时亚东 4 功能:将mysql数据封装成一个类 5 版本:1.0 6 时间:2019-10-01 7 ‘‘‘ 8 9 #模块导入 10 import pymysql 11 12 # 封装成一个MySQL类 13 class MySQL(): 14 15 ‘‘‘初始化‘‘‘ 16 def __init__(self, host, user, passwd, db_name): 17 self.host = host 18 self.user = user 19 self.passwd = passwd 20 self.db_name = db_name 21 22 ‘‘‘连接数据库‘‘‘ 23 def connect(self): 24 # 获取host,user,passwords以及database_name 25 self.db = pymysql.connect(self.host, self.user, self.passwd, self.db_name) 26 # 设置一个游标 27 self.cursor = self.db.cursor() 28 29 ‘‘‘断开数据库‘‘‘ 30 def close(self): 31 self.cursor.close() 32 self.db.close() 33 34 ‘‘‘获取表中一个值‘‘‘ 35 def get_one(self, sql): 36 result = None 37 try: 38 self.connect() 39 self.cursor.execute(sql) 40 result = self.cursor.fetchone() 41 self.close() 42 except: 43 print(查询失败) 44 45 return result 46 47 ‘‘‘获取表中所有数据‘‘‘ 48 def get_all(self, sql): 49 result = () 50 try: 51 self.connect() 52 self.cursor.execute(sql) 53 result = self.cursor.fetchall() 54 self.close() 55 except: 56 print(查询失败) 57 58 return result 59 60 ‘‘‘增加数据‘‘‘ 61 def insert(self, sql): 62 63 return self.__edit(sql) 64 65 ‘‘‘更新数据‘‘‘ 66 def update(self, sql): 67 68 return self.__edit(sql) 69 70 ‘‘‘删除数据‘‘‘ 71 def delete(self,sql): 72 73 return self.__edit(sql) 74 75 def __edit(self, sql): 76 count = 0 77 try: 78 self.connect() 79 count = self.cursor.execute(sql) 80 self.db.commit() 81 self.close() 82 except: 83 print(事物提交失败) 84 self.db.rollback()
测试案例:

技术图片
 1 #-*- coding: utf-8 -*-
 2 ‘‘‘
 3 作者:时亚东
 4 功能:测试封装的MySQL类是否能用
 5 版本:
 6 时间:2019-10-01
 7 ‘‘‘
 8 
 9 #模块导入
10 from MySQL import MySQL
11 
12 ‘‘‘连接数据库‘‘‘
13 s = MySQL(192.168.112.19, root, 123456, test)
14 
15 ‘‘‘查询数据‘‘‘
16 # sql = ‘select * from bankcard where money > 400‘
17 
18 ‘‘‘增加数据‘‘‘
19 sql_insert = insert into bankcard values (0,100),(0, 2000),(0, 1500)
20 s.insert(sql_insert)
21 
22 ‘‘‘查询数据‘‘‘
23 sql_check = select * from bankcard
24 res = s.get_all(sql_check)
25 for row in res:
26     print(%d -- %d %(row[0], row[1]))
View Code

 


 

---恢复内容结束---

为了以后工作查询方便,特地将一些常用的代码,以博客形式储存下来,如果能帮助对有相同需求的朋友,甚是欣喜!
mysql与Python交互中的封装
1
#-*- coding: utf-8 -*- 2 ‘‘‘ 3 作者:时亚东 4 功能:将mysql数据封装成一个类 5 版本:1.0 6 时间:2019-10-01 7 ‘‘‘ 8 9 #模块导入 10 import pymysql 11 12 # 封装成一个MySQL类 13 class MySQL(): 14 15 ‘‘‘初始化‘‘‘ 16 def __init__(self, host, user, passwd, db_name): 17 self.host = host 18 self.user = user 19 self.passwd = passwd 20 self.db_name = db_name 21 22 ‘‘‘连接数据库‘‘‘ 23 def connect(self): 24 # 获取host,user,passwords以及database_name 25 self.db = pymysql.connect(self.host, self.user, self.passwd, self.db_name) 26 # 设置一个游标 27 self.cursor = self.db.cursor() 28 29 ‘‘‘断开数据库‘‘‘ 30 def close(self): 31 self.cursor.close() 32 self.db.close() 33 34 ‘‘‘获取表中一个值‘‘‘ 35 def get_one(self, sql): 36 result = None 37 try: 38 self.connect() 39 self.cursor.execute(sql) 40 result = self.cursor.fetchone() 41 self.close() 42 except: 43 print(查询失败) 44 45 return result 46 47 ‘‘‘获取表中所有数据‘‘‘ 48 def get_all(self, sql): 49 result = () 50 try: 51 self.connect() 52 self.cursor.execute(sql) 53 result = self.cursor.fetchall() 54 self.close() 55 except: 56 print(查询失败) 57 58 return result 59 60 ‘‘‘增加数据‘‘‘ 61 def insert(self, sql): 62 63 return self.__edit(sql) 64 65 ‘‘‘更新数据‘‘‘ 66 def update(self, sql): 67 68 return self.__edit(sql) 69 70 ‘‘‘删除数据‘‘‘ 71 def delete(self,sql): 72 73 return self.__edit(sql) 74 75 def __edit(self, sql): 76 count = 0 77 try: 78 self.connect() 79 count = self.cursor.execute(sql) 80 self.db.commit() 81 self.close() 82 except: 83 print(事物提交失败) 84 self.db.rollback()
测试案例:

技术图片
 1 #-*- coding: utf-8 -*-
 2 ‘‘‘
 3 作者:时亚东
 4 功能:测试封装的MySQL类是否能用
 5 版本:
 6 时间:2019-10-01
 7 ‘‘‘
 8 
 9 #模块导入
10 from MySQL import MySQL
11 
12 ‘‘‘连接数据库‘‘‘
13 s = MySQL(192.168.112.19, root, 123456, test)
14 
15 ‘‘‘查询数据‘‘‘
16 # sql = ‘select * from bankcard where money > 400‘
17 
18 ‘‘‘增加数据‘‘‘
19 sql_insert = insert into bankcard values (0,100),(0, 2000),(0, 1500)
20 s.insert(sql_insert)
21 
22 ‘‘‘查询数据‘‘‘
23 sql_check = select * from bankcard
24 res = s.get_all(sql_check)
25 for row in res:
26     print(%d -- %d %(row[0], row[1]))
View Code

 


 

myaql功能封装代码及封装后的测试

标签:模块   sql   exce   hal   mysq   失败   HERE   database   color   

原文地址:https://www.cnblogs.com/syd123/p/11616273.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!