使用python语言,使用Python自带的SQLite3数据库创建一个student.db数据库文件,用这个数据库文件 完成本班学生信息系统的构建,主要功能有:增加学生信息,删除学生信息,修改学生 信息,显示学生信息。学生信息内容可以有学号,姓名,性别,年龄,电话,Python课 成绩等等。 #主要框架如下: defmain(): whileTrue: #连接数据库,如果数据库不存在,默认在当前路径下创建 conn=sqlite3.connect("student.db") #获取游标 cur=conn.cursor() #创建表 cur.execute(""" createtable…………. ) """) #提交事物 conn.commit() #关闭游标 cur.close() #关闭连接 conn.close() #显示菜单 select=showMenu() ifselect==1: addStudent() elifselect==2: delStudent() elifselect==3: reviseStudent() elifselect==4: showStudent() elifselect==0: #退出系统 break else: print("输入有误!请重新操作!") continue if__name__=='__main__': main()
时间: 2023-06-05 08:07:15 浏览: 359
首先,我们使用Python自带的SQLite3数据库创建一个student.db数据库文件:
```python
import sqlite3
db = sqlite3.connect('student.db')
cursor = db.cursor()
cursor.execute('''
CREATE TABLE IF NOT EXISTS students(
id INTEGER PRIMARY KEY,
name TEXT,
gender TEXT,
age INTEGER,
phone TEXT,
python_score INTEGER)
''')
db.commit()
```
然后,我们可以定义增加、删除、修改、显示学生信息的函数来完成本班学生信息系统的构建:
```python
def add_student_info(name, gender, age, phone, python_score):
cursor.execute(f"INSERT INTO students(name, gender, age, phone, python_score) VALUES('{name}', '{gender}', {age}, '{phone}', {python_score})")
db.commit()
print('添加成功!')
def delete_student_info(id):
cursor.execute(f"DELETE FROM students WHERE id={id}")
db.commit()
print('删除成功!')
def modify_student_info(id, name=None, gender=None, age=None, phone=None, python_score=None):
update_info_list = []
if name != None:
update_info_list.append(f"name='{name}'")
if gender != None:
update_info_list.append(f"gender='{gender}'")
if age != None:
update_info_list.append(f"age={age}")
if phone != None:
update_info_list.append(f"phone='{phone}'")
if python_score != None:
update_info_list.append(f"python_score={python_score}")
update_info_str = ','.join(update_info_list)
cursor.execute(f"UPDATE students SET {update_info_str} WHERE id={id}")
db.commit()
print('修改成功!')
def show_student_info():
cursor.execute("SELECT * FROM students")
all_student_info = cursor.fetchall()
for student_info in all_student_info:
print(student_info)
```
其中,每个函数的作用如下:
- `add_student_info(name, gender, age, phone, python_score)`:向数据库中添加一条学生信息,参数为学生姓名、性别、年龄、电话和Python课成绩。
- `delete_student_info(id)`:从数据库中删除指定ID的学生信息。
- `modify_student_info(id, name, gender, age, phone, python_score)`:修改指定ID的学生信息,可选参数为学生姓名、性别、年龄、电话和Python课成绩。
- `show_student_info()`:显示所有学生信息。
现在,我们可以调用这些函数来使用本班学生信息系统了:
```python
add_student_info('张三', '男', 18, '13312345678', 90)
add_student_info('李四', '女', 19, '13387654321', 85)
show_student_info()
modify_student_info(1, name='王五', phone='13812345678')
show_student_info()
delete_student_info(2)
show_student_info()
```
输出结果如下:
```
添加成功!
添加成功!
(1, '张三', '男', 18, '13312345678', 90)
(2, '李四', '女', 19, '13387654321', 85)
修改成功!
(1, '王五', '男', 18, '13812345678', 90)
(2, '李四', '女', 19, '13387654321', 85)
删除成功!
(1, '王五', '男', 18, '13812345678', 90)
```
阅读全文