SQL创建学生信息数据库表示例:学生、课程与选课表结构
161 浏览量
更新于2024-08-04
1
收藏 53KB DOC 举报
本文档提供了使用SQL语句创建学生信息数据库表的示例,包括学生表(Student),课程表(Course)和学生选课表(SC)的设计与建表操作。首先,我们来详细了解这三个表格及其字段:
1. 学生表(Student):
- 列名:Sno(学号),数据类型为varchar(7),为主键,用于唯一标识每个学生。
- Sname(姓名),非空,varchar(10)类型,用于存储学生的姓名。
- Ssex(性别),char(2),只允许输入'男'或'女',通过check约束确保数据的有效性。
- Sage(年龄),整数类型,范围在15到45之间,使用check约束保证数据的合理性。
- Sdept(所在院系),默认为'计算机系',varchar(20)类型,可自定义。
创建学生表的SQL语句如下:
```
CREATE TABLE Student (
Sno varchar(7) PRIMARY KEY,
Sname varchar(10) NOT NULL,
Ssex char(2) CHECK (Ssex IN ('男', '女')),
Sage int CHECK (Sage BETWEEN 15 AND 45),
Sdept varchar(20) DEFAULT ('计算机系')
);
```
2. 课程表(Course):
- 列名:o(课程号),主键,varchar(10)类型。
- ame(课程名),非空,varchar(20)类型。
- Ccredit(学分),整数类型,必须大于0。
- Semester(学期)和 Period(学时)均为整数类型,分别检查其值大于0。
创建课程表的SQL语句如下:
```
CREATE TABLE Course (
o varchar(10) PRIMARY KEY,
ame varchar(20) NOT NULL,
Ccredit int CHECK (Ccredit > 0),
Semester int CHECK (Semester > 0),
Period int CHECK (Period > 0)
);
```
3. 学生选课表(SC):
- 列名:Sno(学号)和o(课程号),都是外键,引用Student和Course的主键,varchar(7)和varchar(10)类型。
- Grade(成绩),整数类型,范围在0到100之间,确保数据的准确性。
创建学生选课表的SQL语句如下:
```
CREATE TABLE SC (
Sno varchar(7) FOREIGN KEY REFERENCES Student(Sno),
o varchar(10) FOREIGN KEY REFERENCES Course(o),
Grade int CHECK (Grade BETWEEN 0 AND 100),
PRIMARY KEY (Sno, o)
);
```
文档还提到一个查询示例,即查询学生选课表中的全部数据,但具体查询语句未给出。根据需求,可能使用的SQL查询如下:
```
SELECT * FROM SC;
```
这个查询将返回所有学生选课的信息,包括学号、课程号以及成绩。通过这些表结构,我们可以有效地管理学生、课程以及他们之间的选课关系,方便进行数据检索和分析。
109 浏览量
1486 浏览量
2021-10-03 上传
2022-07-13 上传
2021-09-25 上传
249 浏览量
2022-05-18 上传
2024-07-15 上传
2024-07-15 上传

yyyyyyhhh222
- 粉丝: 468
最新资源
- Android平台DoKV:小巧强大Key-Value管理框架介绍
- Java图书管理系统源码与MySQL的无缝结合
- C语言实现JSON与结构体间的互转功能
- 快速标签插件:将构建信息轻松嵌入Java应用
- kimsoft-jscalendar:多语言、兼容主流浏览器的日历控件
- RxJava实现Android多线程下载与断点续传工具
- 直观示例展示JQuery UI插件强大功能
- Visual Studio代码PPA在Ubuntu中的安装指南
- 电子通信毕业设计必备:元器件与芯片资料大全
- LCD1602显示模块编程入门教程
- MySQL5.5安装教程与界面展示软件下载
- React Redux SweetAlert集成指南:增强交互与API简化
- .NET 2.0实现JSON数据生成与解析教程
- 上海交通大学计算机体系结构精品课件
- VC++开发的屏幕键盘工具与源码解析
- Android高效多线程图片下载与缓存解决方案