数据库基础

一、数据库基础

1.1 什么是数据库技术

数据库技术所研究的问题:科学的组织和存储数据+高效地 获取和处理数据

1.2 SQL

什么是SQL?

SQL是Structured Query Language(结构化查询语言)的缩写。
• SQL是专为数据库而建立的操作命令集,是一种功能齐全的数据库语言。
• 在使用SQL时,只需要发出“做什么”的命令,“怎么做”是不用使用者考虑的。

1.3 DB,DBS,DBMS

• 数据(Data)
• 数据库(Database)(DB)
• 数据库管理系统(DBMS)
• 数据库系统(DBS)

数据(Data)

数据(Data)的定义:

• 对客观事物的符号表示,如图形符号、数字、字母等,数据是数据库中存储的基本对象。
• 在日常生活中,人们直接用语言来描述事物;
• 在计算机中,为了存储和处理这些事物,就要将事物的特征抽象出来组成一个记录来描述。

数据的种类:文字、图形、图象、声音

数据实例
• 学生档案中的学生记录
‒ (崔半仙,男,2000,上海,计算机系,2018)

• 数据的形式不能完全表达其内容

• 数据的解释
‒ 崔半仙是个大学生,2000年出生,上海人,2018年考入计算机系
‒ 崔半仙,男,上海人,2000年毕业,2018年担任计算机系主任

数据库(DB)

数据库(DB)定义:
• 长期储存在计算机内的、有组织的、可共享的数据集合。
• 数据库中的数据按一定的数据模型组织、描述和储存。
• 具有较小的冗余度、较高的数据独立性和易扩展性,并可为各个用户共享。

数据库管理系统(DBMS)

DBMS定义:
• 位于应用程序与存储数据的之间的一层数据管理软件。
• 是基础软件,是一个大型复杂的软件系统
• DBMS的用途:科学组织和存储数据、高效地获取和维护数据

DBMS主要功能
• 数据库的定义功能:
它把用DDL编写的各级源模式编译成各级目标模式,这些目标模式是对数据库结构信息的
描述,而不是数据本身,它们被保存在数据字典中,供以后数据操纵或数据控制时使用。
• 数据库的操作功能:
单独数据操纵语言DML及其编译程序,实现对数据库的基本操作。基本操作有两类检索和更新
• 数据库的保护功能:
数据库的数据恢复、数据库的并发控制、数据完整性控制和数据安全性控制。
• 数据库的维护功能:
数据库的数据导入、转换、存储、数据库性能监控等。

DBMS的优点:
• 相互关联的数据的集合
• 较少的数据冗余
• 程序与数据相互对立
• 保证数据的安全、可靠、正确
• 数据可以并发使用并能同时保证一致性

时下流行的DBMS:
Oracle
• 应用广泛、功能强大、分布式数据库系统
• “关系-对象”型数据库
MySQL
• 快捷、可靠
• 开源、免费、与PHP组成LAMP环境
SQL Server
• 针对不同用户群体的五个特殊的版本
• 易用性好
DB2
• 应用于大型应用系统,具有较好的可伸缩性

数据库系统(DBS)

一般由数据库数据库管理系统(及其开发工具)应用系统数据库管理员用户构成。

数据库系统的发展经历了3个阶段:
网状数据库、层次数据库和关系数据库。它们分别采用网状模型、层次模型和关系模型作为数据的组织方式。
• 网状模型(图形结构)
• 层次模型(树形结构)
• 关系模型(简单二维表结构)

DBS的基本概念

信息和数据:
• 回想什么是数据?
• 信息:是指数据经过加工处理后所获取的有用知识。信息是以某种数据形式表现的。

1.4 关系模型

前言:
信息的3种世界:
(1)现实世界: 现实世界就是存在于人脑之外的客观世界。
(2)信息世界:信息世界就是现实世界在人们头脑中的反映,又称观念世界。
(3)数据世界:数据世界是信息世界中的信息数据化后对应的产物,就是将信息世界中的信息经过抽象和组织,按照特定的数据结构,将数据存储在计算机中。
实体-联系-模型:
• 实体: 客观事物在信息世界中称为实体(Entity),它是现实世界中任何可区分、识别的事物。
• 属性: 描述实体或者联系的性质或特征的数据项
• 联系: 反映事物内部或事物之间的关联集合 , 常见的实体联系有3种:一对一联系、一对多联系和多对多联系。

关系的基本概念

关系:一个关系就是一张二维表,通常将一个没有重复行、重复列的二维表看成一个关系,每个关系都有一个关系名。

• 元组:二维表的每一在关系中称为元组。在MySQL中,一个元组对应表中一个记录。

• 属性:二维表的每一在关系中称为属性,每个属性都有一个属性名,属性值则是各个元组属性的取值。(字段—列)

• 域:属性的取值范围称为域。域作为属性值的集合,其类型与范围具体由属性的性质及其所表示的意义确定。同一属性只能在相同域中取值。

• 关键字:关系中能唯一区分、确定不同元组的属性或属性组合,称为该关系的一个关键字(唯一的标识,不可重复)

(1)关系模式
对关系的描述称为关系模式,其格式为:
关系名(属性名1, 属性名2, ……, 属性名n)

(2)关系的基本特点
在关系模型中,关系具有以下基本特点:
①关系必须规范化,属性不可再分割。
②在同一关系中不允许出现相同的属性名。
③在同一关系中元组的顺序可以任意。
④在同一关系中属性的顺序可以任意。

(3)关系运算
关系运算主要有选择投影连接3种。
• 选择:从关系模式中找出满足给定条件的元组组成新的关系(从行的角度进行的运算)
在这里插入图片描述
• 投影:从关系模型中指定若干属性组成新的关系(从列的角度进行的计算)
在这里插入图片描述
• 连接:从两个关系的笛卡儿积中选取属性间满足一定条件的元组,组成新的关系

假设集合A={a, b},集合B={0, 1, 2},则两个集合的笛卡尔积为{(a, 0), (a, 1),(a, 2), (b, 0), (b, 1), (b, 2)}。

类似的例子有,如果A表示某学校学生的集合,B表示该学校所有课程的集合, 则A与B的笛卡尔积表示所有可能的选课情况。

1.5 关系的完整性约束

(1)实体完整性

主属性值(主关系键的值)不能取空值。
如:学生信息表(学号,姓名,性别,年龄,地址)中学号不能为空。

(2)参照完整性(引用完整性)

简单说就是主键与外键的关系。
如学生表与选课表之间用学号建立关联。学生表是主表,选课表是从表。若向从表中输入一条新纪录,系统会检查记录的学号是否在主表中存在。若存在,则允许此操作,否则将拒绝输入。

(3)域完整性(用户定义完整性)

限制了某些属性中出现的值,把属性限制在一个有限的集合中。

如若属性类型是正整数,那么输入值则不能为小数等其它任何非
整数。

1.6 三范式

关系模式要满足的条件称为规范化形式,简称范式。

关系模型规范化的目的是为了消除存储异常,减少数据冗余,保
证数据的完整性和存储效率
,一般规范为3NF即可。

(1)第一范式(1NF)

如果关系R的所有属性均为简单属性,即每个属性都是不可再分的,则称R满足第一范式。

简单来说:第一范式就是无重复的列。

(2)第二范式(2NF)

如果关系R满足第一范式,且每一个非主键字段完全依赖于主键,
则称R满足第二范式。

学生:Student(学号,姓名,年龄);
课程:Course(课程名称,学分);
选课关系:SelectCourse(学号,课程名称,成绩)。

(3)第三范式(3NF)

如果关系R满足第二范式,且非主键字段之间不存在依赖关系,则称R满足第三范式。

存在一个部门信息表,其中每个部门有部门编号(dept_id)、部门名称、部门简介等信息。
那么在员工信息表中列出部门编号后就不能再将部门名称、部门简介等与部门有关的信息再加入员工信息表中。

:一个基本的关系型数据库要满足第一范式;一个完整的关系型数据库要满足第三范式

1.7 E-R图

E-R图也称实体-联系图(Entity Relationship Diagram),提供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型。

通常用矩形表示实体型,矩形框内写明实体名
椭圆表示实体属性,椭圆内写明实体属名
菱形表示实体型间的联系,在菱形内写明联系名
线段连接起来

在这里插入图片描述
例:图上有4个实体…… 教师和课程之间是多对多联系

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值