python学生信息管理系统(使用类和MySQL实践)

#导入pymysql模块
import pymysql
#定义学生信息表操作类
class stuinfo:
    def __init__(self):
        #获取数据库连接
        self.db = pymysql.connect(host="localhost",user="root",password="",db="studb",charset="utf8")
        
        #创建游标对象
        self.cursor = self.db.cursor()
    #定义信息查询函数
    def findAll(self):
        #定义sql语句
        sql = "select * from stu"
        try:
            #执行sql操作
            self.cursor.execute(sql)
            #解析结果
            while True:
                data = self.cursor.fetchone()
                if data == None:
                    break;
                print(data)
        except:
            print("sql执行错误!")
    #定义添加学员信息函数
    def insert(self,name,age,classid):
        self.name = name
        self.age = age
        self.classid = classid
        #定义sql语句
        sql = "insert into stu (name,age,classid) values('%s','%s','%s')"%(self.name,self.age,self.classid)
        try:
            #执行sql操作
            self.cursor.execute(sql)
            #事务提交
            self.db.commit()
        except:
            #事务回滚
            self.db.rollback()
            print("sql执行错误!")
    #定义删除学员信息函数        
    def delete(self,id):
        self.id = id
        #定义sql语句
        sql = "delete from stu where id=%s"%(self.id)
        try:
            #执行sql操作
            self.cursor.execute(sql)
            #事务提交
            self.db.commit()
        except:
            #事务回滚
            self.db.rollback()
            print("sql执行错误!")
    #关闭数据库连接
    def __del__(self):
        self.db.close()
#类实例化
stuinfo = stuinfo()
#学生信息管理系统输出界面
while True:
    print("="*12,"学员管理系统","="*14)
    print("{0:1} {1:13} {2:15}".format(" ","1.查看学员信息","2.添加学员信息"))
    print("{0:1} {1:13} {2:15}".format(" ","3.删除学员信息","4.退出系统"))
    print("="*40)
    key = input("请输入对应选择:")
    if key == "1":
        print("="*12,"学员信息浏览","="*14)
        stuinfo.findAll()
        input("按回车继续")
    elif key == "2":
        print("="*12,"学员信息添加","="*14)
        stu={}
        stu['name']=input("请输入要添加的学员姓名:")
        stu['age']=input("请输入要添加的学员年龄:")
        stu['classid']=input("请输入要添加的学员班级:")
        stuinfo.insert(stu['name'],stu['age'],stu['classid'])
        stuinfo.findAll()
        input("按回车继续")
    elif key == "3":
        print("="*12,"学员信息删除","="*14)
        id=input("请输入要删除学员信息的id号:")
        stuinfo.delete(id)
        stuinfo.findAll()
        input("按回车继续")
    elif key == "4":
        print("="*12,"再见","="*14)
        break
    else:
        print("==========无效的键盘输入!===========")

你可能感兴趣的:(python,mysql)