关系型数据库
什么是关系模型
* 关系模型把世界看做由实体(Entity)和联系(Relationship)组成。所谓实体就是指在现实世界中客观存在兵并可互相区分的事物
* 实体所具有的某一特性称为属性(Attribute)实体可以通过若干属性来描述,以关系模型来创建的数据库称为关系型数据库(Relational Database).类似于实体被存入表中,tabel 表是关系型数据库的核心单元,他是存储数据的地方
主键:在关系型数据模型中,用一个唯一的标识符来标识每一行,这个标识符就是主键(Primary Key)
外建:在关系型数据库中,外键(Forergn Key)就是用来表达表与表之间的关系联系
关系型数据库是以表为实体,以主键和外键的关联关系作为练习的数据结构
一对一:一条主表记录对应一条从表记录,同时一条从表记录也对应一条主表记录
如:一个公民表编号记录对应一条身份证表编好记录,同时一个身份证记录对应一个公民记录
一对多;一个主表记录对应多条从表记录,同时一条从表记录对应一条主表记录
如:一个班级对应多个学生,同时一个学生对应一个班级
多对多:一条主表记录对应多条从表记录,同时一条从表记录对应多条主表记录
如:一个老师教多个学生,一个学生被多个老师教过
什么是数据库管理系统
关系型数据库只是一个保存数据的容器,大多数数据库依靠一个称为数据管理系统(Datebase Management System 简称DBMS)的软件来管理数据库中的数据。管理关系型数据库的软件称为关系型数据库管理系统(Relational Database Management System 简称RDBMS).数据库引用程序通过RDBM与关系性数据库进行交互
数据库管理系统分类
本地数据库管理系统
数据库服务器管理系统
结构化查询语言SQL
SQl是结构化查询语言(Structured Query Language)英文的缩写,发音为“ess-kue-ell”或“see-kwell”是一种用于管理关系型数据库,并与数据库中的数据进行通讯的计算机语言
SQL语句
数据定义语言(DDL)创建,修改,删除数据库中的内部数据结构
数据库查询语言(DQL)用于数据库中的数据的查询
数据库操作语言(DML)用于数据库中的数据修改,包括添,删除,修改等
数据控制语言(DCL)控制数据库访问权限
数据库的完整性概述
为了防止垃圾数据的参数,从而影响数据库的执行效率
数据库完整性概念
可靠性+准确性=数据完整性
完整性分类
1.实体完整性
* 保证一行数据是有效的
2.域完整性
* 保证一列数据是有效的
3.引用完整性
* 保证引用编号是有效的
4.用户自定义完整性
* 保证自定义规则是有效的
为什么要保证实体完整性
* 保证每行所代表的实体能够相互区别,不能存在两条一模一样的记录
什么是实体完整性
* 表中的一行数据如果与他所代表的实体完全一致,则具备实体完整性
实现方法
主键约束(Primary Key)
* 主键是表中的一到多个列,主键列不能为空,也不能重复,一个表中只能有一个主键
唯一约束(Unique)
* 唯一约束是指给定列的所有值必须是唯一,该列在表中每一个行的值必须唯一,他和主键约束的区别在与该列可以为空,并且可以在一个表中给多个列设置唯一约束
域完整性
1.为什么要域完整性
* 保证指定列数据的有效性
2.什么叫域完整性
* 域完整性是指定列的输入有效性
3.实现方式
* 非空约束:Not Null
* 默认方式:Default
* 检查约束Check(MySQL不支持)
引用完整性--外键约束
为什么要引用完整性
列如,录入学生成绩时,所使用的学号必须是在学生表中做主键的编号
什么叫引用完成性
参照完整性是指肺部在两个表中所满足的具有主从性质的约束关系
从外键中提取出的数据,必须在主表中的列中出现
外键和外键约束
外键是指从表的某列与主表的某列在依附关系
外键约束是指在外键关联主键三强制加上一个约束,如果违反该约束,则不允许该条数据修改
注意,没有建立外键约束不等于没有外键,外键只加到从表,主表的主键与外表的外键关联