基于Python实现校友管理系统的开发与设计
import sqlite3
# 连接到数据库(如果不存在则会自动创建)
conn = sqlite3.connect('alumni.db')
cursor = conn.cursor()
# 创建学生信息表
cursor.execute('''
CREATE TABLE IF NOT EXISTS students (
id INTEGER PRIMARY KEY AUTOINCREMENT,
name TEXT NOT NULL,
major TEXT,
year INTEGER,
email TEXT UNIQUE
)
''')
# 提交更改并关闭连接
conn.commit()
conn.close()
def add_student(name, major, year, email):
conn = sqlite3.connect('alumni.db')
cursor = conn.cursor()
try:
cursor.execute('INSERT INTO students (name, major, year, email) VALUES (?, ?, ?, ?)',
(name, major, year, email))
conn.commit()
print("学生已成功添加!")
except sqlite3.IntegrityError:
print("邮箱地址已存在,请检查输入!")
finally:
conn.close()
# 示例调用
add_student('张三', '计算机科学', 2020, 'zhangsan@example.com')
def delete_student(email):
conn = sqlite3.connect('alumni.db')
cursor = conn.cursor()
cursor.execute('DELETE FROM students WHERE email=?', (email,))
if cursor.rowcount > 0:
print(f"成功删除邮箱为 {email} 的学生记录!")
else:
print("未找到匹配的学生记录。")
conn.commit()
conn.close()
def update_student(email, new_major=None, new_year=None):
conn = sqlite3.connect('alumni.db')
cursor = conn.cursor()
updates = []
params = []
if new_major:
updates.append('major=?')
params.append(new_major)
if new_year:
updates.append('year=?')
params.append(new_year)
if updates:
query = f'UPDATE students SET {", ".join(updates)} WHERE email=?'
params.append(email)
cursor.execute(query, tuple(params))
if cursor.rowcount > 0:
print(f"成功更新邮箱为 {email} 的学生记录!")
else:
print("未找到匹配的学生记录。")
conn.commit()
conn.close()
本站知识库部分内容及素材来源于互联网,如有侵权,联系必删!