1.什么是数据库,数据库管理系统,数据库系统数据库管理员?
数据库:( DataBase,简称DB ) 就是信息的集合或者说数据库是由数据库管理系统管理的数据的集合。
数据库管理系统:( Database Management System,简称DBMS ) 是一种操纵和管理数据库的大型软件,通常用于建立、使用和维护数据库。
数据库系统: ( Data Base System,简称DBS) 通常由软件、数据库和数据管理员 ( DBA ) 组成。
数据库管理员:( Database Administrator,简称DBA ) 负责全面管理和控制数据库系统。
2.什么是元组,码,候选码,主码,外码,主属性,非主属性?
元组:( tuple ) 是关系数据库中的基本概念,关系是一张表,表中的每行 ( 即数据库中的每条记录)就是一个元组,每列就是一个属性。 在二维表里,元组也称为行。
码:码就是能唯一标识实体的属性,对应表中的列。
候选码:若关系中的某一属性或属性组的值能唯一的标识一个元组,而其任何、子集都不能再标识,则称该属性组为候选码。例如:在学生实体中,"学号"是能唯一的区分学生实体的,同时又假设“姓名”、"班级”的属性组合足以区分学生实体,那么 { 学号 } 和 { 姓名,班级 } 都是候选码。
主码:主码也叫主键。主码是从候选码中选出来的。一个实体集中只能有一个主码,但可以有多个候选码。
外码:外码也叫外键。如果一个关系中的一个属性是另外一个关系中的主码则这个属性为外码。.
主属性:候选码中出现过的属性称为主属性。比如关系工人 ( 工号,身份证号,姓名,性别,部门 ),显然工号和身份证号都能够唯一标示这个关系,所以都是候选码。工号、身份证号这两个属性就是主属性。如果主码是一个属性组,那么属性组中的属性都是主属性。
非主属性:不包含在任何一个候选码中的属性称为非主属性。比如在关系一学生 ( 学号,姓名,年龄,性别,班级) 中,主码是“学号",那么其他的“姓名”、“年龄”、“性别"、“班级"就都可以称为非主属性。
3.主键和外键有什么区别?
主键(主码):主键用于唯一标识一个元组,不能有重复,不允许为空。一个表只能有一个主键。
外键(外码):外键用来和其他表建立联系用,外键是另一表的主键,外键是可以有重复的,可以是空值。一个表可以有多个外键。
4.数据库的三范式是什么?
第一范式:原子性,存储的数据应该具有不可再分性,列不可再分。
第二范式:唯一性,消除非主键部分依赖联合主键中的部分字段,要求非主键字段必须完全依赖主键,不能部分依赖。
第三范式:独立性,消除依赖传递,非主键值不依赖于另一个非主键值。
三级范式是一级一级依赖的,第二范式建立在第一范式上,第三范式建立在第一、第二范式上。