import pymysql
# 1.导包
class DataBase(object):
def __init__(self,host, user, password, database, port):
# __init__ 初始化数据
self.db = pymysql.connect(host=host,user=user,password=password,database=database,port=port,charset='utf8')
# 连接数据库
def AddData(self,sql):
# 增加方法
self.cursor = self.db.cursor()
# 创建游标
try:
self.cursor.execute(sql)
# 运行sql语句
self.db.commit()
# 提交
print('添加成功')
except:
self.db.rollback()
# 回滚
print('添加失败')
finally:
self.cursor.close()
# 关闭游标
self.db.close()
# 关闭数据库连接
def UpdateData(self,sql):
self.cursor = self.db.cursor()
a = self.cursor.execute(sql)
print(a)
if a:
self.db.commit()
print('修改成功')
else:
self.db.rollback()
print('修改失败')
self.cursor.close()
def DeleteData(self,sql):
self.cursor = self.db.cursor()
try:
self.cursor.execute(sql)
self.db.commit()
print('删除成功')
except:
self.db.rollback()
print('删除失败')
finally:
self.cursor.close()
def SelectData(self,sql):
self.cursor = self.db.cursor()
# 创建游标
try:
self.cursor.execute(sql)
# 运行sql语句
data = self.cursor.fetchall()
# 获取全部数据
# 解析数据
list = []
for i in data:
d = {
'ID':i[0],
'姓名':i[1],
'性别':i[2],
}
list.append(d)
return list
except:
print('无数据')
finally:
self.cursor.close()
# 关闭游标
self.db.close()
# 关闭数据库连接
def Close(self):
self.cursor = self.db.cursor()
self.cursor.close()
print('关闭')
if __name__ == '__main__':
Data = DataBase('127.0.0.1','root','123456','day07',3306)
# 实例化对象
# Data.AddData('insert into stu values(4,"叶子3","男")')
# 添加数据
# Data.UpdateData('update stu set gender = "女" where id = 2')
# 修改数据
# Data.DeleteData('delete from stu where id=1')
# 删除数据
# Data.SelectData('select * from stu')
# 查询数据
# Data.Close()
# 关闭数据库
如果在其他的文件调用封装好的方法,导包即可