数据库系统原理

发布于:2024-12-06T05:13:00.000000Z

学习人数:1

知识点:350

更新于:2024-12-16T06:59:27.000000Z

数据与数据处理

关系数据模型

重要程度:10 分
<div> <h2>关系数据模型</h2> <p><strong>关系数据模型</strong>是目前应用最广泛的数据模型,它基于集合论的概念。关系数据模型由三部分组成:数据结构、数据操作和完整性约束。</p> <h3>1. 数据结构</h3> <p>在关系数据模型中,数据结构主要表现为二维表的形式,这些二维表被称为关系。每一个关系都有一个唯一的名称,并且由行和列组成。每一行代表一个元组(记录),每一列代表一个属性(字段)。</p> <h3>2. 数据操作</h3> <p>关系数据模型中的数据操作主要包括查询、插入、删除和更新。这些操作通常通过SQL语言来实现。</p> <h3>3. 完整性约束</h3> <p>关系数据模型中的完整性约束主要有实体完整性、参照完整性和用户定义的完整性。</p> <ul> <li><strong>实体完整性:</strong>要求关系中的主键不能有空值,即主键不能为空。</li> <li><strong>参照完整性:</strong>要求外键的值必须来自于它所引用的表中的主键,或者为空。</li> <li><strong>用户定义的完整性:</strong>指用户自定义的一些规则,例如某个字段不能为负数等。</li> </ul> <h3>例题说明</h3> <p>假设有一个学生信息表(Student),包含以下字段:学号(Sno)、姓名(Sname)、性别(Ssex)、年龄(Sage)、所在系(Sdept)。其中学号为主键。</p> <table border="1"> <tr> <th>学号 (Sno)</th> <th>姓名 (Sname)</th> <th>性别 (Ssex)</th> <th>年龄 (Sage)</th> <th>所在系 (Sdept)</th> </tr> <tr> <td>S001</td> <td>张三</td> <td>男</td> <td>20</td> <td>计算机科学与技术系</td> </tr> <tr> <td>S002</td> <td>李四</td> <td>女</td> <td>22</td> <td>软件工程系</td> </tr> </table> <p>在这个例子中,学号(Sno)是主键,因此根据实体完整性约束,学号不能为空,且每个学生的学号都是唯一的。</p> <p>假设还有一个课程表(Course),包含以下字段:课程号(Cno)、课程名(Cname)、学分(Credit)。课程号为主键。</p> <table border="1"> <tr> <th>课程号 (Cno)</th> <th>课程名 (Cname)</th> <th>学分 (Credit)</th> </tr> <tr> <td>C001</td> <td>数据结构</td> <td>4</td> </tr> <tr> <td>C002</td> <td>数据库系统原理</td> <td>3</td> </tr> </table> <p>现在我们有一个选课表(SC),记录学生选修课程的信息,包含以下字段:学号(Sno)、课程号(Cno)、成绩(Grade)。其中(Sno, Cno)构成联合主键。</p> <table border="1"> <tr> <th>学号 (Sno)</th> <th>课程号 (Cno)</th> <th>成绩 (Grade)</th> </tr> <tr> <td>S001</td> <td>C001</td> <td>85</td> </tr> <tr> <td>S002</td> <td>C002</td> <td>90</td> </tr> </table> <p>根据参照完整性约束,选课表(SC)中的学号(Sno)必须存在于学生表(Student)中,课程号(Cno)必须存在于课程表(Course)中。</p> </div>
上一条 下一条