小明(学生助理): 老师您好,我们学校打算建立一个迎新管理系统,我负责技术部分,但对具体实现有些困惑。
老师: 嗯,这是一个很好的项目。你打算使用什么语言和数据库呢?
小明: 我想用Python编写后端服务,因为听说它有很多强大的库。对于数据库,我认为MySQL是个不错的选择,因为它被广泛使用。
老师: 很好!那么首先我们需要设计数据库。你认为需要哪些表?
小明: 我觉得应该有新生信息表,包括姓名、学号、专业等基本信息;还有宿舍分配表,记录每个学生的宿舍号;以及活动报名表,用于记录学生参与的各种迎新活动。
老师: 设计得不错。我们可以开始创建这些表了。这是创建新生信息表的SQL语句:
CREATE TABLE student_info (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(100) NOT NULL,
student_id VARCHAR(20) UNIQUE NOT NULL,
major VARCHAR(100) NOT NULL,
phone_number VARCHAR(15),
email VARCHAR(50)
);
小明: 明白了,那接下来是宿舍分配表:
CREATE TABLE dormitory_allocation (
id INT AUTO_INCREMENT PRIMARY KEY,
student_id VARCHAR(20) NOT NULL,
dormitory_number VARCHAR(20) NOT NULL,
FOREIGN KEY (student_id) REFERENCES student_info(student_id)
);
老师: 非常好。现在让我们看看如何使用Python连接到MySQL数据库吧。这里有一个简单的示例:
import mysql.connector
def connect_to_db():
connection = mysql.connector.connect(
host='localhost',
user='root',
password='password', # 请替换为实际密码
database='university'
)
return connection
connection = connect_to_db()
cursor = connection.cursor()
# 插入数据示例
insert_query = "INSERT INTO student_info (name, student_id, major) VALUES (%s, %s, %s)"
values = ("张三", "S123456789", "计算机科学")
cursor.execute(insert_query, values)
connection.commit()
cursor.close()
connection.close()
小明: 太棒了!这样我们就有了基本的框架。接下来我可以继续完善功能了。