一. data 、database、DBMS、DBS
要认识数据库,首先要区别
数据 (data)
数据库 (database,DB)
数据库管理系统 (database management system,DBMS)
数据库系统 (database system,DBS)
四个概念。
数据: 数据就不用多说了,描述事物的符号记录称为数据;
数据库: 数据的集合。说官方点就是长期储存的、有组织的、可共享的大量数据的集合;
数据库管理系统: 管理数据库的软件;
数据库系统: 一个完整的存储、管理、处理和维护数据的系统.
如果要用大小关系粗略衡量他们的关系,那就是
数据库系统 > 数据库管理系统 > 数据库 > 数据
数据库根据使用的数据模型的不同,可以划分出不同类型的数据库,这里主要讲的是关系型数据库;
常见的关系型数据库有:MS SQL Server、MySQL、Oracle数据库。
二. 行、元组、记录、实体,列、属性、字段
database 由许多二维数据表组成,简称表(table)
一个简单的二维表如下图所示。
初学者对于二维表的元组、记录、实体、属性、字段概念非常容易混淆,当然,我也是个初学者。
表的一行(row)术语称为元组(Tuple),也被称为一条记录(记不清英文是不是Record了),
Entity(实体)本来被用来描述客观存在的可以被描述的事物;
元组可表示一个实体或实体之间的联系;
记录实际上是对某一实体的全部属性进行描述的结果;
但有时,有些人也会用实体来表示记录的概念;
对应上表,可以称第二行:“200111,John,张三,xxxxxxx,15689523120,John@email.com”为一个元组或一条记录。
表的一列(column)术语称为属性(Attribute),属性有属性名、属性类型、属性值域和属性值之分,但很多时候属性被用来指属性名,如ID、USER等。
在这种情况下,也用字段(Field)来描述一个特定的属性值(a specific value ),如“200112”,或一列的单个项(single item of a column),如TureName;
字段和属性在日常使用中经常混用,差不多已经划等号了。
一个元组和一个属性可以唯一的表示一个二维表中的数据。
下面是元组和属性概念的正解:
元组(Tuple):
关系表中的一行称为一个元组。
属性(Attribute):
关系表中的一个列称为关系的一个属性,即元组的一个数据项。
针对容易混淆的概念的说明:
属性与字段是对同一个元素不同的称呼;
在关系代数中称实体的特性为属性,在关系模型中称实体的特性为字段;
它们是两个世界里的概念,有高度的对应关系:
概念世界 计算机世界
实体-------------记录
属性-------------字段
实体集-----------文件
三. 后记
有什么不同的意见或见解请留言说明。