python+mysql实现学生信息查询系统

时间:2019-02-21
这篇文章主要为大家详细介绍了python+mysql实现学生信息查询系统,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了python mysql学生信息查询系统的具体代码,供大家参考,具体内容如下

import pymysql
#import redis
#pool = redis.ConnectionPool(host='IP地址', port=6379, decode_responses=True)
 
while True:
 while True:
  # print('=' * 15)
  user = str(input('请输入用户名:'))
  passwd = str(input('请输入密码:'))
  # print('=' * 15)
  if passwd == 'root':
   print('=' * 20, '\n学生查询系统\n'
       '1.学院类型信息\n')
   print('=' * 20)
   break
  else :
   print('--请重新输入密码--')
 
 num = int(input('请输入功能相对应的数字:'))
 print()
 
 db = pymysql.connect('IP地址','MySQL用户名','MySQL密码','数据库', charset='utf8')
 cursor = db.cursor()
 if num == 1:
  sql = 'select type_id,name from school_type'
  cursor.execute(sql)
  results = cursor.fetchall()
  print('学院序号  学院名称')
  for row in results:
   print(row)
 print()
 num1 = int(input('请输入你想查看的学院对应数字:'))
 while True:
  if num1 == 1:
   print('-' * 15,'\n1 查看该学院介绍\n'
     '2 查看该学院开设专业\n'
     '0 返回上一层')
   print('-' * 15)
   num2 = int(input('请输入对应功能的数字:'))
   if num2 == 1:
    sql1 = 'select name,introduction from school_type'
    cursor.execute(sql1)
    results1 = cursor.fetchall()
    print('学院名字    学院简介')
    for row1 in results1:
     print(row1)
   elif num2 == 2:
    sql2 = 'select * from eie'
    cursor.execute(sql2)
    results2 =cursor.fetchall()
    print('序号 名字 班级数量')
    for row2 in results2:
     print(row2)
    break
 num3 = int(input('请输入想要查询专业名前所对应的数字:'))
 if num3 == 1:
  sql3 = 'select class_id,classname,number,manager from class join class_manager on(class.class_id = class_manager_id)'
  cursor.execute(sql3)
  results3 = cursor.fetchall()
  print('  名称  人数 班主任')
  for row3 in results3:
   print(row3)
 num4 = int(input('请输入想要查询班级前所对应的数字:'))
 while True:
  if num4 == 1:
   print('-' * 20,'\n1、查看班级所有人信息\n'
    '2、添加学生信息\n'
    '3、删除学生信息\n'
    '4、修改学生信息\n'
    '0、退出系统')
   print('-' * 20)
  num5 = int(input('请选择功能(序号):'))
  if num5 == 1:
   sql4 = 'select student_name,sex,student_num,evaluation from cloud_one'
   cursor.execute(sql4)
   results4 = cursor.fetchall()
   print('姓名 性别 学号 评分')
   for row4 in results4:
    print(row4)
  elif num5 == 2:
   print('您选择了添加学生信息功能')
   name = str(input('请输入学生姓名:'))
   sex = str(input('请输入学生性别:'))
   studentnum = int(input('请输入学生学号(学号不可重复):'))
   pf = int(input('请输入学生评测分数:'))
   sql5 = 'insert into cloud_one(student_name,sex,student_num,evaluation) values("%s","%s",%d,%d)' % (name,sex,studentnum,pf)
   print(sql5)
   try:
    cursor.execute(sql5)
    db.commit()
   except:
    db.rollback()
   print('******已添加成功******')
  elif num5 == 3:
   print('您选择了删除学生信息功能')
   num6 = int(input('请您输入要删除的学号:'))
   sql6 = 'delete from cloud_one where student_num = %d'%num6
   try:
    cursor.execute(sql6)
    db.commit()
   except:
    db.rollback()
   print('******已删除成功******')
  elif num5 == 4:
   print('您选择了修改学生信息功能')
   num7 = int(input('请您输入要修改的学生学号'))
   sql7 = 'select student_name,sex,student_num,evaluation from cloud_one where student_num=%d'%num7
   cursor.execute(sql7)
   results5 = cursor.fetchall()
   print(' 姓名 性别 学号 评分')
   print(results5)
   xm = str(input('请输入您要更改的姓名:'))
   xb = str(input('请输入您要更改的性别:'))
   xh = int(input('请输入您要更改的学号:'))
   pf = int(input('请输入您要更改的评分:'))
   sql8 = 'update cloud_one set student_name="%s",sex="%s,student_num=%d,evaluation=%d' % (xm,xb,xh,pf)
   print(sql8)
   try:
    cursor.execute(sql8)
    db.commit()
   except:
    db.rollback()
   print('*****已更改成功****')
  elif num5 == 0:
   num8 = str(input('******你真的要离开宝宝吗******(Y/N):'))
   if num8 == 'Y':
    break
   else:
    continue

查看信息的时候,上面程序可以用pandas中的一种数据结构DataFrame优化一下。

可以网上了解一下DataFrame!!!!

这是我本人做的一些与上面程序有关的数据库。因为初学者,仅供参考

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。