一,数据模型,关系型数据模型,网状模型,层次模型
1.数据库模型是用来描述和表示现实世界中的事物、概念以及它们之间的关系的工具,但是并不是越专业越好,还要平衡它的模型的复杂性、通用性和成本效益等因素。数据模型按不同的应用层次可以分为三个层次,它们分别是:概念数据模型(E-R图),逻辑数据模型(数据模型),物理数据模型(储存硬盘)。
2.关系数据模型它的三个核心要素是:数据结构、操作集合 以及 完整性约束。关系模型的存取路径对用户透明,从而具有更高的数据独立性、更好的安全保密性,也简化了程序员的工作和数据库开发建立的工作。由Edgar F. Codd(埃德加 • 科德)提出。
3.网状模型:一个结点有多个父结点以及结点之间为多对多联系的情形
4.层次模型:有且只有一个结点没有双亲结点,这个结点称为根结点。根以外的其他结点有且只有一个双亲结点。
二,数据库系统模式和模式映像
1.模式是数据库中全体数据的全局逻辑结构和特征的描述,它定义了数据的整体结构和关系,是数据库设计的基础。(只有一个)
2.内模式则是对数据的物理结构和存储方法的描述,它规定了数据在数据库内部的表示方式和存储方式。内模式关注的是数据的存储和访问效率,以及如何有效地将数据存储在物理介质上。(只有一个)
3.外模式(用户模式或子模式):是数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图。不同的用户或应用程序可能需要看到不同的数据视图,因此可以定义多个外模式来满足这些需求。(可以有多个)
4.外模式/模式映像:当数据库的逻辑结构(即模式)发生变化时,如增加新的关系、改变关系的属性或数据类型等,只要对外模式/模式映像作相应的修改,就可以使外模式保持不变。应用程序是依据数据的外模式编写的,因此应用程序不必修改,从而保证了数据与程序的逻辑独立性,也称为数据的逻辑独立性。
5.要保证数据库的数据独立性,主要需要修改的是数据库系统中的二级映象,包括外模式/模式映像和模式/内模式映像。
三,数据库关系模式
1.在数据库的实际应用中,由于业务需求的变更、数据的增长和变化以及其他因素的影响,数据库中的数据是不断更新的,这导致关系模式也可能发生相对变化。
四,数据库系统特点(冗余度)
1.数据库中的数据冗余度通常是不高的。通过合理的数据模型设计和数据库管理系统(DBMS)的应用,数据库可以确保数据的结构化(数据完整性)、共享性高 以及 冗余度低。
五,三级模式和系统安全性
1.数据库的三级模式结构确实能够提高系统的安全性。这种结构通过逻辑和物理独立性、权限控制以及数据完整性约束等机制,为数据库系统提供了强大的安全保障。
2.三级模式结构通过外模式/模式映像和模式/内模式映像,实现了数据的逻辑独立性和物理独立性(数据独立性)。是由DBMS提供的。
3.三级模式结构支持权限控制机制。通过为不同的用户或应用程序分配不同的外模式,可以限制它们对数据的访问和操作权限。
4.三级模式结构还支持数据完整性约束。通过定义数据的完整性规则,如主键约束、外键约束等,可以确保数据的准确性和一致性。
5.模式之间的对应关系:模式与外模式是一对多关系,模式与内模式是一对一的关系。
6.外模式与应用程序之间的对应关系:是一对一的关系
六,数据与信息
1.数据是表示信息的具体形式,信息是数据表达的内容
2.数据处理并不是将信息转换成数据的过程,而是对已有的数据进行收集、整理、分析、解释和呈现的过程。数据是客观存在的符号,而信息是经过加工处理后的数据,具有特定的含义和价值。
七,数据库系统,数据库,数据库管理系统
1.数据库系统(DBS)不仅仅是一个应用软件,它是一个复杂且综合的系统。它包括了 数据库(DB)、数据库管理系统(DBMS),数据库应用程序,数据库管理员(DBA),用户,硬件。
2.数据库(DB):长期存储在计算机内的有组织、可共享的数据集。
3.数据库管理系统(DBMS):它是在操作系统支持下的系统软件,负责数据库中数据组织、数据操纵、数据维护、控制及保护和数据服务等。它属于系统软件的范畴。数据库管理系统(DBMS)负责处理来自应用程序的SQL语句,DBMS并不直接编译高级语言程序。是数据库系统的核心
4.数据库管理员 (DBA) :通常在应用程序开发过程中就开始介入,而不是在应用程序交付使用后。
在应用程序开发过程中,DBA会与开发人员紧密合作,提供数据库相关的技术支持和指导。
八,E-R图
1.矩形:用来表示实体集,矩形框内写上实体集的名字。
2.菱形:用来表示实体集之间的关系,菱形内部写上关系的名称。菱形还与表示实体集的矩形相连,用线段连接表示它们之间的关系。
3.椭圆形: 用来表示实体上的属性。
4.域:是定义属性的重要概念,它限定了属性可以取的值的范围。
5.实体集和实体型:同类实体的集合称为实体集,而描述同类实体的结构和属性的抽象概念称为实体型。
6.实体之间三类基本的关系 : 一对一(1:1)关系,一对多(1:m)关系,多对多(m:n)关系。
7.区分不同实体的主要依据属性
九,数据库系统的数据独立性
1.数据独立性主要体现在两个方面:物理数据独立性和逻辑数据独立性。
2.物理数据独立性 : 是指用户的应用程序与存储在磁盘上的数据库中数据是相互独立的。也就是说,数据的物理结构(如数据存储方式、存储位置等)发生改变时,不会影响到应用程序。
3.逻辑数据独立性 : 则是指用户的应用程序与数据库的逻辑结构是相互独立的。这意味着数据库的逻辑结构(如表结构、关系、属性等)发生变化时,应用程序也不需要修改。
4.总之数据库系统的数据独立性体现在:不会因为数据存储结构与数据逻辑结构的变化而影响应用程序
十.数据库命令语言(DDL,DCL,DML,DQL)
-
数据定义语言(DDL, Data Definition Language):
- 用来定义数据库对象,如表、索引、触发器等。
- 常见的DDL命令包括:
-
CREATE DATABASE
:创建新数据库。 -
CREATE TABLE
:创建新表。 -
ALTER TABLE
:修改表结构。 -
DROP TABLE
:删除表。 -
CREATE INDEX
:创建索引。
-
-
数据操作语言(DML, Data Manipulation Language):
- 用来对数据库中的数据进行增、删、改操作。
- 常见的DML命令包括:
-
INSERT INTO
:向表中插入新数据。 -
UPDATE
:更新表中数据。 -
DELETE
:从表中删除数据。
-
-
数据查询语言(DQL, Data Query Language):
- 用来查询数据库中的数据。
- 最常见的DQL命令是
SELECT
,它允许用户根据指定条件检索表中的数据。 -
ORDER BY
也常用来对查询结果进行排序。
-
数据控制语言(DCL, Data Control Language):
- 用来定义数据库的访问权限和安全级别,以及创建和管理数据库用户。
- 常见的DCL命令包括:
-
GRANT
:授权用户访问或操作数据库对象。 -
REVOKE
:撤销用户的访问权限。
-
十一,数据库系统与文件系统的主要区别
- 数据存储方式:文件系统将数据组织成相互独立的数据文件,实现了记录内的结构性,但整体无结构。相比之下,数据库系统则实现了整体数据的结构化,这是数据库系统的一个主要特征,也是其与文件系统的本质区别。
- 程序与数据的联系:在文件系统中,程序和数据之间存在一定的联系。然而,在数据库系统中,程序和数据是分离的,这种分离有助于数据的独立性和可维护性。
- 数据管理方式:文件系统使用操作系统中的存取方法来管理数据,而数据库系统则使用DBMS(数据库管理系统)来统一管理和控制数据。
- 数据共享方式:文件系统实现的是以文件为单位的数据共享,而数据库系统则实现以记录和字段为单位的数据共享。
- 数据冗余和数据独立性:文件系统不能解决数据冗余和数据独立性问题,而数据库系统则可以。