数据库学习1一些基本概念

主要参考《MySQL必知必会》以及网络上一些资料。这里主要不是一些概念性的东西,而是简单而系统地学习和回顾一下SQL。当年本科时候学习过SQL语言,但用的DBMS是SqlServer。

一、一些基本概念

1、数据库(Database)

数据库是保存有组织的数据的容器(通常是一个文件或一组文件)。要与数据库软件区分开。数据库软件应称为DBMS(数据库管理系统),它是一种操纵和管理数据库的大型软件,用于建立、使用和维护数据库。数据库是通过DBMS创建和操控的。

2、表(Table)

表是某种特定类型(这里并不是指int或double这种类型,而是更广义上,抽象上的类型,如一种事物等)数据的结构化清单。存储在表中的数据是一种类型的数据或一个清单。决不应该将顾客的清单与订单的清单存储在同一个数据库表中。这样做将使以后的检索和访问很困难。应该创建两个表,每个清单一个表。数据库中的每个表都有自己唯一的一个名字。

3、列

表中的一个字段。所有表都是由一个或多个列组成的。数据库中每个列都有相应的数据类型。数据类型定义列可以存储的数据种类。例如,如果列中存储的为数字(或许是订单中的物品数),则相应的数据类型应该为数值类型。如果列中存储的是日期、文本、注释、金额等,则应该用恰当的数据类型规定出来。

4、行

表中的一个记录。行也称为记录。

5、主键

一列(或一组列),其值能够唯一区分表中每个行。虽然在实际使用过程中并不总是都需要主键,但大多数数据库设计人员都应保证他们创建的每个表具有一个主键,以便于以后的数据操纵和管理。

6、模式

模式是关于数据库和表的布局及特性的信息。表具有一些特性,这些特性定义了数据在表中如何存储,如可以存储什么样的数据,数据如何分解,各部分信息如何命名,等等。描述表的这组信息就是所谓的模式,模式可以用来描述数据库中特定的表以及整个数据库(和其中表的关系)。

7、另一个模式的定义(更常用)

也称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。注意:一个数据库只有一个模式;是数据库数据在逻辑级上的视图;数据库模式以某一种数据模型为基础。定义模式时不仅要定义数据的逻辑结构(如数据记录由哪些数据项构成,数据项的名字、类型、取值范围等),而且要定义与数据有关的安全性、完整性要求,定义这些数据之间的联系。模式有外模式、概念模式、内模式。

  (1)概念模式(Conceptual Schema)

  概念模式是数据库系统中全局数据逻辑结构的描述,是全体用户(应用)公共数据视图,此种描述是一种抽象的描述,它不涉及具体的硬件环境与平台,也与具体的软件环境无关。

  概念模式主要描述数据的概念记录类型及数据以及它们间的关系,它还包括一些数据间的语义约束,对它的描述可用DBMS中的DDL语言定义。

  (2)外模式(External Schema)

  外模式也称子模式(Subschema)或称用户模式(User’s schema)它是用户的数据视图,亦即是用户所见到的模式的一个部分,它由概念模式推导而出,概念模式给出了系统全局的数据描述而外模式则给出每个用户的局部描述。一个概念模式可以有若干个外模式,每个用户只关心与它有关的模式,这样可以屏蔽大量无关信息且有利于数据保护,因此对用户极为有利。在一般的DBMS中都提供有相关的外模式描述语言(外模式DDL)。

  (3)内模式(Internal Schema)

  内模式又称物理模式(Physical Schema),它给出了数据库物理存储结构与物理存取方法,如数据存储的文件结构、索引、集簇及hash等存取方式与存取路径,内模式的物理性主要体现在操作系统及文件级上,它还不深入到设备级上(如磁盘及磁盘操作),但近年来有向设备级发展的趋势(如原始磁盘、磁盘分块技术等),DBMS一般提供相关的内模式描述语言(内模式DDL)。

  数据模式给出了数据库的数据框架结构,而数据库中的数据才是真正的实体,但这些数据必须按框架所描述的结构组织,以概念模式为框架所组成的数据库叫概念数据库(Conceptual Database),以外模式为框架所组成的数据库叫用户数据库(user’s Database),以内模式为框架所组成的数据库叫物理数据库(Physical Database),这三种数据库中只有物理数据库是真实存在于计算机外存中,其它两种数据库并不真正存在于计算机中,而是通过两种映射由物理数据库映射而成。

  模式的三个级别层次反映了模式的三个不同环境以及它们的不同要求,其中内模式处于最低层,它反映了数据在计算机物理结构中的实际存储形式,概念模式处于中层,它反映了设计者的数据全局逻辑要求,而外模式处于最外层,它反映了用户对数据的要求。

  数据库系统的三级模式是对数据的三个级别抽象,它把数据的具体物理实现留给物理模式,使用户与全局设计者能不必关心数据库的具体实现与物理背景,同时,它通过两级映射建立三级模式间的联系与转换,使得概念模式与外模式虽然并不具物理存在,但是也能通过映射而获得其存在的实体,同时两级映射也保证了数据库系统中数据的独立性,亦即数据的物理组织改变与逻辑概念级改变,并不影响用户外模式的改变,它只要调整映射方式而不必改变用户模式。

  (1)概念模式到内模式的映射

  该映射给出了概念模式中数据的全局逻辑结构到数据的物理存储结构间的对应关系,此种映射一般由DBMS实现。

  (2)外模式到概念模式的映射

  概念模式是一个全局模式而外模式则是用户的局部模式,一个概念模式中可以定义多个外模式,而每个外模式是概念模式的一个基本视图。外模式到概念模式的映射给出了外模式与概念模式的对应关系,这种映射一般由DBMS实现。

8、视图

视图(View)是从一个或多个表(或视图)导出的表。视图与表(有时为与视图区别,也称表为基本表——Base Table)不同,视图是一个虚表,即视图所对应的数据不进行实际存储,数据库中只存储视图的定义,在对视图的数据进行操作时,系统根据视图的定义去操作与视图相关联的基本表。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值