创建一个关系型数据库db_stu(SQLite数据库),并在该数据库中创建一个学生信息表tb_student,包含stuId(学号)、stuName
(姓名)、stuSex(性别)、stuMajor(专业)、stuBirthday(出生日
期)等字段信息,其中stuId为主键。请使用python编写程序实现
对数据库表tb_student进行数据的增加,修改,删除与查询等基本
操作(自定义所需添加修改与删除的数据)。
import pymysql
class stuSystem:
def open_mysql(self):
self.conn = pymysql.connect('localhost','root','158598','sanke')
self.cursor = self.conn.cursor()
def close_mysql(self):
# 关闭游标和链接
self.cursor.close()
self.conn.close()
#1.显示功能列表
def show(self):
print('''
欢迎进入学生管理系统!
请选择您要执行的功能:
1.添加学生信息
2.删除学生信息
3.更新学生信息
4.查询学生信息
5.查询学生表
0.退出学生管理系统
''')
#2.获取功能序号
def getInfo(self):
key = int(input('请输入执行功能的序号:'))
return key
#3.添加学生信息
def add(self):
sid = eval(input('请输入学生的ID:'))
gradename = input('请输入学生的名字:')
age = eval(input('请输入学生的年龄:'))
parm = (sid,gradename,age)
sql = 'insert into sk values (%s,%s,%s)'
self.cursor.execute(sql,parm)
self.conn.commit()
#4.删除学生信息
def dele(self):
delNum = int(input('请输入您要删除的学生学号:'))
sql = 'delete from sk where sid=%s'
self.cursor.execute(sql,delNum)
self.conn.commit()
print('已删除该学生信息')
#5.更新学生信息
def modifyInfo(self):
modifyUser = input('请输入您要修改的学员信息(sid/gradename/age):')
if modifyUser == 'sid':
modifyNum = input('请输入您要修改的学生姓名:')
modifyIn = input('请输入您要更新后的ID数据:')
sql = 'update sk set sid=%s where gradename=%s'
parm = (modifyIn,modifyNum)
self.cursor.execute(sql, parm)
self.conn.commit()
print('学生表更新完成!')
elif modifyUser == 'gradename':
modifyNum = input('请输入您要修改的学生ID:')
modifyIn = input('请输入您要更新后的学生姓名:')
sql = 'update sk set gradename=%s where sid=%s'
parm = (modifyIn,modifyNum)
self.cursor.execute(sql, parm)
self.conn.commit()
print('学生表更新完成!')
elif modifyUser == 'age':
modifyNum = input('请输入您要修改的学生ID:')
modifyIn = input('请输入您要更新后的年龄数据:')
sql = 'update sk set age=%s where sid=%s'
parm = (modifyIn,modifyNum)
self.cursor.execute(sql, parm)
self.conn.commit()
print('学生表更新完成!')
#6.查询学生信息
def searchInfo(self):
searchNum = int(input('请输入您要查询的学号:'))
sql = 'select * from sk where sid=%s'
self.cursor.execute(sql,searchNum)
student = self.cursor.fetchone()
print('学号:{},名字:{},年龄:{}'.format(student[0],student[1],student[2]))
#7.展示学生表
def showInfo(self):
sql = 'select * from sk'
self.cursor.execute(sql)
student = self.cursor.fetchall()
print('*'*20)
print('ID 姓名 年龄')
for i in student:
print('{} {} {}'.format(i[0],i[1],i[2]))
print('*'*20)
#8.退出系统
def quit(self):
print('系统已退出,再见!')
#9.函数调用
def func(self):
#链接数据库
self.open_mysql()
while True:
#显示功能
self.show()
#获取序号
key = self.getInfo()
if key == 0 : #退出
quit()
self.close_mysql()
break
elif key == 1: #增加
self.add()
elif key == 2: #删除
self.dele()
elif key == 3: #更新
self.modifyInfo()
elif key == 4: #查询
self.searchInfo()
elif key == 5: #学生表展示
self.showInfo()
else:
print('输入错误,请重新输入')
import sqlite3
conn = sqlite3.connect('enterprise.db')
curs = conn.cursor()
curs.execute(''SQL语句'')
有这几个方法差不多够用了,剩下的就是写SQL语句的事了