帮我用SQL sever写一个学生选课管理系统
时间: 2025-02-17 22:25:00 浏览: 22
创建一个简单的学生选课管理系统涉及设计数据库表、创建基本操作的SQL语句,比如添加学生、课程、和选课记录。以下是简化的数据库结构示例以及一些基本的CRUD操作:
- 创建数据库和表: ```sql CREATE DATABASE StudentCourseSystem;
USE StudentCourseSystem;
-- 创建学生表 CREATE TABLE Students ( ID INT PRIMARY KEY, Name VARCHAR(50), Major VARCHAR(50) );
-- 创建课程表 CREATE TABLE Courses ( ID INT PRIMARY KEY, CourseName VARCHAR(50), Teacher VARCHAR(50) );
-- 创建选课表 (一对多关系) CREATE TABLE Enrollments ( StudentID INT, CourseID INT, FOREIGN KEY (StudentID) REFERENCES Students(ID), FOREIGN KEY (CourseID) REFERENCES Courses(ID), PRIMARY KEY (StudentID, CourseID) );
2. **插入数据**:
```sql
INSERT INTO Students (ID, Name, Major) VALUES (1, '张三', '计算机科学');
INSERT INTO Courses (ID, CourseName, Teacher) VALUES (1, '数据结构', '李四');
INSERT INTO Enrollments (StudentID, CourseID) VALUES (1, 1); -- 学生1选修了课程1
- 查询操作:
- 查询所有学生:
SELECT * FROM Students;
- 查询特定学生所选的所有课程:
SELECT Courses.CourseName FROM Courses JOIN Enrollments ON Courses.ID = Enrollments.CourseID WHERE Enrollments.StudentID = (SELECT ID FROM Students WHERE Name = '张三');
- 更新和删除操作:
- 修改学生信息:
UPDATE Students SET Major = '软件工程' WHERE ID = 1;
- 删除学生选课记录:
DELETE FROM Enrollments WHERE StudentID = 1 AND CourseID = 1;