1. 基本操作(增删改查)封装
2. 基于python3操作

1 ''' 2 Created on 2019年 3 数据库工具类 4 @author: Root 5 ''' 6 import pymysql 7 import configparser 8 9 # 读取配置文件 10 cf = configparser.ConfigParser() 11 cf.read('db.config') 12 host = cf.get('db', 'host') 13 port = cf.get('db', 'port') 14 port = int(port) 15 user = cf.get('db', 'user') 16 pwd = cf.get('db', 'passwd') 17 db = cf.get('db', 'db') 18 charset = cf.get('db', 'charset') 19 20 class DBUtils: 21 22 # 获取数据库连接 23 def getConn(self): 24 conn = pymysql.connect(host=host,port=port,user=user,passwd=pwd,db=db,charset=charset) 25 return conn 26 27 # 查询所有数据 28 def get_allDate(self,sql): 29 # 取得连接 30 conn = DBUtils().getConn() 31 # 创建游标 32 cursor = conn.cursor() 33 # 执行SQL 34 cursor.execute(sql) 35 # 处理结果集 36 result = cursor.fetchall() 37 # 返回处理结果 38 return result 39 # 关闭连接 40 conn.close() 41 42 # 条件查询 43 def get_dateByCount(self,sql,count): 44 # 取得连接 45 conn = DBUtils().getConn() 46 try: 47 # 创建游标 48 cursor = conn.cursor() 49 # 执行SQL 50 cursor.execute(sql,count) 51 # 处理结果集 52 result = cursor.fetchall() 53 # 返回处理结果 54 return result 55 except Exception as e: 56 print ('查询失败',e) 57 # 关闭连接 58 conn.close() 59 60 61 # 操作数据 62 def operate_dateByCount(self,sql,count): 63 # 取得连接 64 conn = DBUtils().getConn() 65 try: 66 # 创建游标 67 cursor = conn.cursor() 68 # 执行SQL 69 if type(count) is tuple: 70 cursor.execute(sql,count) 71 elif type(count) is list: 72 cursor.executemany(sql,count) 73 else: 74 print ('参数count类型不正确') 75 # 执行SQL成功,则提交事务 76 conn.commit() 77 print (count,'操作成功') 78 return 0 79 except Exception as e: 80 # 执行SQL失败,则回滚事务 81 conn.rollback() 82 print ('操作失败',e) 83 # 关闭连接 84 conn.close()
配置文件写法
db.config或者db.ini
[db]
host=localhost
port=3306
user=root
passwd=root
db=xxx
charset=utf8