《数据库原理与应用》期末复习
时间:2025-04-20
时间:2025-04-20
一、 数据库系统概述
1. 数据库,是相互关联的数据的集合,它用综合的方法组织数据,具有较小的数据冗余,可供多个用户共享,具有较高的数据独立性,具有安全控制机制,能够保证数据的安全、可靠,允许并发地使用数据库,能有效、及时地处理数据,并能保证数据的一致性和完整性。
2. 数据管理的三个阶段:人工管理,文件系统,数据库系统。
3. 数据库系统包括:数据库,数据库管理系统,应用程序,各类人员;其核心是数据库管理系统。
4. 两大类数据模型:概念模型和(组织)数据模型
(1)概念模型:实体-联系模型
实体:实体是具有公共性质的可相互区别的现实世界对象的集合。
属性:属性就是描述实体或者联系的性质或特征的数据项。
联系:实体内部的联系通常是指组成实体的各属性之间的联系,实体之间的联系通常是指不同实体之间的联系。联系分为三类:一对一联系、一对多联系、多对多联系。
(2)数据模型
常见的数据模型,三类:层次模型(用树型结构组织数据)、网状模型(用图型结构组织数据)、 关系模型(用简单二维表结构组织数据)。
SQL Server 属于 关系模型数据库管理系统。
5.关系模型中的基本术语
(1)关系
关系就是二维表,它满足如下条件:
关系表中的每一列都是不可再分的基本属性。
表中各属性不能重名。
表中的行、列次序并不重要,即交换列的前后顺序不影响其表达的语义。
(2)元组
表中的每一行数据称作是一个元组,它相当于一个记录值。
(3)属性
表中的每一列是一个属性值集,列可以命名,称为属性名。
(4)主码
主码(Primary key)也译为主键或主关键字,是表中的属性或属性组,用于惟一地确定一个元组。
6. 数据完整性,是指数据库中存储的数据是有意义的或正确的。
数据完整性约束主要包括三大类:
(1) 实体完整性,关系模型中使用主码作为记录的惟一标识。
(2)参照完整性,参照完整性是描述实体之间的联系的。参照完整性一般是指多个实体或表之间的关联关系。
(3)用户定义的完整性,用户定义的完整性就是针对某一具体应用领域定义的数据库约束条件。SQL Server中的check约束。
7.数据库系统的三级模式结构
(1)数据库划分为三层结构:内模式、概念模式和外模式。
(2)数据库的二级映像功能:概念模式和内模式间的映象以及外模式和概念模式间的映象。
二、SQL Server 2000 安装
1.SQL Server 2000有四个版本:企业版、标准版、开发版和个人版。
2.企业版和标准版的安装要求Server级的操作系统,如: Windows NT Server 4.0或以上版、Windows 2000 Server或以上版; 开放版和个人版可以安装在个人版的操作系统上,如: Windows 98、Windows NT Workstation 4.0、Windows 2000 Professional、Windows NT Server 4.0或以上版、Windows 2000 Server或以上版.
三、SQL Server 2000的数据库和表及约束
1.数据库由两种文件组成:一是数据文件,扩展名为“.mdf”,一是日志文件,扩展名为“.ldf”
2. 在定义数据库的数据文件和日志文件时,可以指定如下属性:
(1)文件名及其位置:每个数据库的数据文件和日志文件都具有一个逻辑名称以及文件的物理存放位置。
(2)文件大小:可以指定每个数据文件和日志文件的大小,以MB为单位。
(3)增长方式:如果需要的话,可以指定文件是否自动增长,该选项的默认配置为自动增长
(4)最大大小:指定文件增长的最大大小。默认是大小无限制。
3.数据库表可以设置完整性约束
(1)主键,设置主键的列不允许有重复值,每个表只能设置一个主键。
(2)唯一值,可以设置是一列或多列组成的表达式,值唯一,每个表可设置多个唯一值约束。
(3)默认值,该列不输入内容则以此值填入,可在表中再做修改。
(4)非空,设置该列不许为空值。
(5)参照完整性,设置两个或多个表之间的约束。例如:将主键表“学生”和外键表“成绩”根据“学号”列建立关联,则:a)在成绩表中输入数据时,学号必须是学生表中已经存在的学号;b)可选择设置“级联更新”,则更新了学生表中的学号,成绩表中的相应学号就自动更新了;c)可选择设置“级联删除”,则删除了学生表中的记录,成绩表中的相应学号的记录就自动删除了。
四、SQL
1.查询全体学生的学号与姓名
select 学号,姓名 from 学生
2.查询学生选课成绩介于80分和90分之间的学生的学号、课程编号、分数。
Select * from 成绩 where 分数 between 80 and 90
3.查询所有学生的学号、姓名、系、出生日期、年龄
Select 学号,姓名,系,出生日期,year(date())-year(出生日期) as 年龄 from 学生
4.查找姓刘的所有学生的学号、姓名
Select 学号,姓名 from 学生 where 姓名 like ‘刘%’
5.查询既不是科技系也不是法律系的学生的学号、姓名、系
Select 学号,姓名,系 from 学生 where 系 not in(‘法律’,’科技’)
6.查询科技系学生的学号、姓名、课程编号、分数
Select 学生.学号,姓名,课程编号,分数 from 学生 join 成绩 on 学生.学号=成绩.学号
上一篇:济宁市农村基础教育现状的调查报告
下一篇:刑法学#(补修)课程说明