第一步:

导入模块:
import pymysql as pymysql
第二步:

创建数据库连接对象和游标:
# 获取数据库连接对象 db = pymysql.connect(host='localhost', user='root',
password='zhai20011025', database='students') cursor = db.cursor() # 创建游标对象
第三步:

创建类,写好思路框架(在这里我只创建了姓名、性别、年龄三个字段,小伙伴们可根据需要自行增添)

 第四步:

        实现各个功能:

        1.程序入口
def run(self): while True: # 可以循环显示 # 2. 显示功能菜单 self.show_menu() # 3.
用户输入目标功能序号 menu_num = int(input('请输入您需要的功能序号:')) # 4. 根据用户输入的序号执行不同的功能 --
如果用户输入1,执行添加 if menu_num == 1: # 添加学员 self.add_student()
print("------------------------------------------------------") elif menu_num
== 2: # 删除学员 self.del_student()
print("------------------------------------------------------") elif menu_num
== 3: # 修改学员信息 self.modify_student()
print("------------------------------------------------------") elif menu_num
== 4: # 查询学员信息 self.search_student()
print("------------------------------------------------------") elif menu_num
== 5: # 显示所有学员信息 self.show_student()
print("------------------------------------------------------") elif menu_num
== 6: # 保存学员信息 self.save_student()
print("------------------------------------------------------") elif menu_num
== 7: # 退出系统 -- 退出循环 break
        2.显示功能函数
@staticmethod def show_menu(): print('请选择如下功能:') print('1:添加学员')
print('2:删除学员') print('3:修改学员信息') print('4:查询学员信息') print('5:显示所有学员信息')
print('6:保存学员信息') print('7:退出系统')
        3.添加操作
def add_student(self): # 1. 用户输入姓名、性别、年龄 name = input('请输入您的姓名:') sex =
input('请输入您的性别:') age = input('请输入您的年龄:') # SQL 插入语句 sql = "INSERT INTO
STU_INFOR(NAME,SEX, AGE)VALUES (%s,%s,%s)" value = (name, sex, age) try: #
执行sql语句 cursor.execute(sql, value) # 提交到数据库执行 db.commit() print("添加成功") except:
# 如果发生错误则回滚 db.rollback()
        4.删除操作
def del_student(self): # 1. 用户输入目标学员姓名 name = input('请输入要删除的学员姓名:') # SQL
删除语句 sql = f"""DELETE FROM STU_INFOR WHERE NAME='{name}'""" try: # 执行SQL语句
cursor.execute(sql) # 提交修改 db.commit() except: # 发生错误时回滚 db.rollback()
        5.修改操作
def modify_student(self): # 1. 用户输入目标学员姓名 old_name = input('请输入要修改的学员姓名:') #
sql语句,用于判断需要修改的学员是否存在 sql = f""" SELECT 1 FROM stu_infor WHERE
name="{old_name}"; """ cursor.execute(sql) # 执行sql语句 student =
cursor.fetchall() # 返回查询结果集 if student: # 如果该学员存在 new_name = input("请输入姓名:") #
输入修改信息 new_sex = input("请输入性别:") # 输入修改信息 new_age = input("请输入年龄:") # 输入修改信息 #
sql语句 sql2 = f""" UPDATE stu_infor SET name =
"{new_name}",sex="{new_sex}",age="{new_age}" WHERE name="{new_name}"; """
cursor.execute(sql2) # 执行sql语句 db.commit() # 提交修改 else: print('学生不存在,请重新操作。') #
打印提示语句 print('学生修改成功') # 打印提示语句
        6.查询操作
def search_student(self): # 1. 用户输入目标学员姓名 search_name =
input('请输入您要查询的学员姓名:') # SQL 查询语句 sql = "SELECT * FROM STU_INFOR WHERE NAME=%s"
value = (search_name,) # 变量值 try: # 执行SQL语句 cursor.execute(sql, value) #
获取所有记录列表 results = cursor.fetchall() print("数据查询成功!") for row in results: #
遍历数据集 name = row[0] sex = row[1] age = row[2] # 打印结果 print("姓名:%s,性别:%s,年龄:%s"
% (name, sex, age,)) except: print("查无此人")
        7.显示所有信息
def show_student(self): # 1. 打印表头 print('姓名\t性别\t年龄') # sql语句 sql = "SELECT *
FROM STU_INFOR" try: cursor.execute(sql) # 执行sql语句 results = cursor.fetchall()
# 返回结果集 for row in results: # 遍历结果集 # 打印结果 name = row[0] sex = row[1] age =
row[2] print('姓名:%s,性别:%s,年龄:%s' % (name, sex, age)) except pymysql.Error as e:
print("数据显示失败:" + str(e))
第五步:

         主函数:
from managerStudent import * # 2. 启动管理系统 # 保证是当前文件运行才启动管理系统:if --创建对象并调用run方法
if __name__ == '__main__': student_manager = StudentManager()
student_manager.run()
至此,学生信息管理系统(数据库)完结。

技术
今日推荐
阅读数 169345
下载桌面版
GitHub
百度网盘(提取码:draw)
Gitee
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:ixiaoyang8@qq.com
QQ群:766591547
关注微信