利用python完成一个学生信息的增、删、改、查程序。
“一对一模型”是指关系数据库中两个表之间的一种关系。 表示的是表A 中的一行数据只与表B 中的一行有关系。
“一对多模型”是指表A 中的一行数据可以和表B中的多个行相关,但是表B中的数据只能和表A中的一行数据相关。
“多对多模型”是指表A中的一行数据可以和表B中的一行或者多行数据相关。表B的一行数据也可以和表A中的一行或者多行数据相关。
while True:
print('用户登录')
print('=' * 10)
print('1.登录')
print('2.退出')
print('=' * 10)
mc1 = int(input('输入菜单号:'))
if mc1 == 1:
print('登陆成功!')
elif mc1 == 2:
print('感谢使用学生信息管理系统!')
break
def login():
usename = input('请输入用户名:')
password = input('请输入密码:')
if usename == 'yanxi' and password == '020915':
while True:
print('=' * 8 + '学生信息管理系统' + '=' * 8)
print('1.增加学生记录')
print('2.删除学生记录')
print('3.修改学生记录')
print('4.查询学生记录')
print('5.返回上一级菜单')
print('=' * 10)
mc2 = int(input('请输入菜单号:'))
if mc2 == 1:
print('此功能尚未开发')
elif mc2 == 2:
print('此功能尚未开发')
elif mc2 == 3:
print('此功能尚未开发')
elif mc2 == 4:
print('此功能尚未开发')
else:
break
else:
print("用户名或密码错误,请重新输入")
def add_student():
cursor = main()
id = int(input('学号:'))
name = input('姓名:')
gender = input('性别:')
age = int(input('年龄:'))
class_grade = input('班级:')
major = input(('专业:'))
college = input('学院:')
telephone = input('电话:')
add = cursor.execute('insert into stu (id, name, gender, age, class_grade, major, college, telephone)\values
(%s,%s,%s,%s,%s,%s,%s,%s)',(id, name, gender, age, class_grade, major, college, telephone))
if add == 1:
conn.commit()
print('记录插入成功!')
else:
print('记录插入失败!')
def deletel_student():
print('=' *15)
print('1.删除学生相关信息')
print('2.回到初始界面')
print('=' *15)
mc4 = int('input(input menu number:'))
if mc4 == 1:
deletele_student()
elif mc4 == 3:
login()
def update_student():
cursor = main()
cur= int(input('请输入想要修改的学生的学号:'))
cursor.execute('select * from stu where id = %s', (cur))
if cursor.fetchall() == []:
print('未查找到学号是{}的学生'.format(cur))
mc3 = input('是否需要重新查询?(y/n)')
if mc3 != 'n':
update_student()
else:
login()
else:
print('==============')
print('1、修改姓名')
print('2、修改性别')
print('3、修改年龄')
print('4、修改班级')
print('5、修改专业')
print('6、修改学院')
print('7、修改电话')
print('8、返回上级菜单')
print('==============')
mc2 = int(input('请输入菜单号:'))
if mc2 == 1:
name = input('请输入修改后的名字:')
a = cursor.execute('update stu set name = %s where id = %s', (name, cur))
if a == 1:
conn.commit()
print('修改成功!')
else:
print('修改失败!')
elif mc2 == 2:
gender1 = input('请输入修改后的性别:')
a = cursor.execute('update stu set genden = %s where id = %s', (gender1, cur))
if a > 1:
conn.commit()
print('修改成功!')
else:
print('修改失败!')
elif mc2 == 3:
age1 = int(input('请输入修改后的年龄:'))
a = cursor.execute('update stu set age = %s where id = %s', (age1, cur))
if a > 1:
conn.commit()
print('修改成功!')
else:
print('修改失败!')
elif mc2 == 4:
class1 = input('请输入修改后的班级:')
a = cursor.execute('update stu set class = %s where id = %s', (class1, cur))
if a > 1:
conn.commit()
print('修改成功!')
else:
print('修改失败!')
elif mc2 == 5:
major1 = input('请输入修改后的专业:')
a = cursor.execute('update stu set major = %s where id = %s', (major1, cur))
if a > 1:
conn.commit()
print('修改成功!')
else:
print('修改失败!')
elif mc2 == 6:
college1 = input('请输入修改后的学院:')
a = cursor.execute('update stu set college = %s where id = %s', (college1, cur))
if a > 1:
conn.commit()
print('修改成功!')
else:
print('修改失败!')
elif mc2 == 6:
college1 = input('请输入修改后的电话:')
a = cursor.execute('update stu set college = %s where id = %s', (telephone, cur))
if a > 1:
conn.commit()
print('修改成功!')
else:
print('修改失败!')
else:
def query_student():
while True:
print('\n查询学生记录\n')
print('=' * 15)
print('1.按学号查询学生记录')
print('2.按姓名查询学生记录')
print('3.查询全部学生记录')
print('4.返回上级菜单')
rint('=' * 15)
mc3 = int(input('输入菜单号:'))
if mc3 == 1:
id_dis_stu()
elif mc3 == 2:
name_dis_stu()
elif mc3 == 3:
dis_all_stu()
else:
break