数据库与课程关联:创建Stu_Union和Course表及SC表的实验教程

需积分: 0 0 下载量 117 浏览量 更新于2024-08-05 收藏 1.94MB PDF 举报
在本次实验课-第9次-18308045-谷正阳的学习内容中,主要涉及了数据库设计和管理的基础操作。首先,学生被要求在名为'school'的数据库中创建两个表:Stu_Union和Course。 1. **Stu_Union表**: - 表结构定义如下: - sno (5个字符,主键,唯一且不能为空) - sname (8个字符,姓名,不能为空) - ssex (1个字符,性别,可能是0或1表示男女性别) - sage (整型,年龄) - sdept (20个字符,专业,不能为空) 学生数据示例包括: - sno: '10001', sname: '李勇', ssex: '0', sage: 24, sdept: 'EE' - ... (其他学生数据) 2. **Course表**: - cno (4个字符,主键,唯一且不能为空) - cname (50个字符,课程名称,不能为空) - cpoints (整型,学分) 课程数据示例: - cno: '0001', cname: 'Computer Networks', cpoints: 2 - cno: '0002', cname: 'Database', cpoints: 3 3. **建立SC表**: - SC表是Stu_Union和Course表的关联表,用于存储学生选课信息。 - 定义为: - sno (外键,引用Stu_Union的sno,级联删除) - cno (外键,引用Course的cno,级联删除) - 主键设置为 (sno, cno),确保数据完整性。 实验要求在不违反参照完整性的前提下插入数据,这意味着如果在主表Stu_Union或Course中删除某个记录,相应的关联记录也会自动从SC表中删除,以保持数据一致性。 通过这个任务,学生学习了数据库表的设计、主键和外键概念,以及SQL语句(如CREATE TABLE, INSERT INTO, SELECT *)的实际操作。同时,还涵盖了数据库约束规则,如唯一性约束(UNIQUE)和级联删除(CASCADE)。这是一次实用的数据库操作训练,有助于理解和掌握关系型数据库的基本维护和数据关联。