1 import pymysql 2 from day8.homework.const import mysql_info 3 class MySQL: #经典类 4 5 def __init__(self,mysql_info,data_type=1): 6 self.mysql_info = mysql_info 7 self.data_type = data_type 8 self.__connect_status = False 9 self.__connect() 10 11 def __connect(self): 12 print("开始连接mysql") 13 try: 14 self.__conn = pymysql.connect(**self.mysql_info) 15 except: 16 print("数据库连接出错!" ) 17 raise Exception("数据库连接出错") 18 self.__connect_status = True 19 if self.data_type != 1: 20 self.__cur = self.__conn.cursor(pymysql.cursors.DictCursor) 21 else: 22 self.__cur = self.__conn.cursor() 23 print("mysql连接成功!") 24 25 def execute(self,sql): 26 print("开始执行sql",sql) 27 try: 28 self.__cur.execute(sql) 29 except: 30 print("sql不正确,sql语句是%s" % sql) 31 else: 32 print("sql执行完成!") 33 return True 34 35 def fetchone(self,sql): 36 if self.execute(sql): 37 return self.__cur.fetchone() 38 39 def fetchall(self,sql): 40 if self.execute(sql): 41 return self.__cur.fetchall() 42 43 def __del__(self): 44 self.__close() 45 print("mysql 连接关闭完成") 46 47 def __close(self): 48 if self.__connect_status: 49 self.__cur.close() 50 self.__conn.close()