关系型数据库

关系模型

  关系型数据库系统是采用关系模型来组织数据的数据库系统。关系模型建立在严格的数学概念的基础上。

数据结构

  关系模型的数据结构是基本表。涉及到的术语有:

  记录:表中的一行。

  字段:表中的一列。

  主键:可以用来唯一标识一个记录的一个或多个字段。

  主字段:主键包含的字段。

  外键:与其他字段有关联的字段。

数据操作

  关系模型的数据操作主要包括查询、插入、删除和更新这四种操作。关系模型中的数据操作都是集合操作。

完整性约束

  关系模型的完整性约束包括三个方面:

  实体完整性:主字段不能为空。

  参照完整性:外键的取值要么为空,要么是关联字段中存在的值。

  用户定义完整性:字段的取值必须满足用户定义的约束条件。

存储结构

  在关系数据库的物理组织中,有的关系数据库管理系统中一个表对应一个操作系统文件,将物理数据组织交给操作系统完成;有的关系数据库管理系统从操作系统那里申请若干个大的文件,自己划分文件空间,组织表、索引等存储结构,并进行存储管理。

优点

  • 关系模型与格式化模型不同,它是建立在严格的数学概念的基础上的。
  • 关系模型的概念单一,其数据结构简单、清晰,用户易懂易用。
  • 关系模型的存取路径对用户透明,从而具有更高的数据独立性、更好的安全保密性,也简化了程序员的工作和数据库开发建立的工作。

缺点

  • 由于存储路径对用户是透明的,查询效率不如格式化数据模型。
  • 为了提高性能,数据库管理系统必须对用户的查询请求进行优化,因此增加了开发数据库管理系统的难度。

数据字典

  数据字典是关系型数据库内部的一组系统表,它记录了数据库中所有的定义信息,包括模式定义、视图定义、索引定义、约束定义、各类用户对数据库的操作权限、统计信息等。

  关系数据库管理系统执行数据定义,实际上就是在更新数据字典里的相应信息。

结构化查询语言

  结构化查询语言(Structured Query Language,SQL)是关系型数据库的标准语言,也是一个通用的、功能极强的语言。

功能

  数据定义:定义数据库的三级模式结构。

  数据操纵:对基本表和视图的数据进行查询、插入、删除和更新操作。

  数据控制:对用户的访问权限加以控制,保证系统的安全性。

分类

  • 数据定义语言(Data Definition Language,DDL):用于对数据库、基本表、视图、索引等的管理。
  • 数据查询语言(Data Query Language,DQL):用于对基本表或视图数据的查询操作。
  • 数据操纵语言(Data Manipulation Language,DML):用于对基本表或视图数据的插入、删除和更新操作。
  • 数据控制语言(Data Control Language,DCL):用于实现权限控制,定义用户对数据库、基本表或字段的访问权限。
  • 事务控制语言(Transaction Control Language,TCL):确保基本表的数据得以及时更新。

语句规范

  • SQL语句不区分大小写,建议关键字、函数名等大写,数据库名、基本表名、视图名等小写。
  • 每个SQL语句以“;”结尾,表示一个SQL语句结束。
  • SQL语句有两种注释:
    • 单行注释:#注释
    • 多行注释:/*  注释  */

特点

  • 综合统一:SQL集数据定义、数据操纵、数据控制于一体。
  • 高度非过程化:用户无须了解存取路径,存取路径的选择以及SQL的操作过程由系统自动完成。
  • 面向集合的操作方式:SQL采用集合操作方式,查询、插入、删除、更新操作的对象可以是记录的集合。
  • 以同一种语法结构提供多种使用方式:作为独立的语言,SQL可以用于联机交互的使用方式,用户可以在终端键盘上直接键入SQL命令对数据库进行操作;作为嵌入式语言,SQL可以嵌入到高级语言程序中,供程序员设计程序时使用。
  • 语言简洁,易学易用:SQL核心功能只用了9个动词,分别为:数据定义(create、alter、drop)、数据操纵(select、insert、delete、update)、数据控制(grant、revoke)。
原文地址:https://www.cnblogs.com/lqkStudy/p/11461798.html