数据库系统概论|第三章:关系数据库标准语言SQL—课程笔记1

前言

结构化查询语言(SQL)是关系数据库的标准语言 ,其功能包括数据库模式创建、数据库数据的插入与修改、数据库数据的查询、数据库安全性定义与控制等诸多功能。第三章详细介绍了SQL的基本功能,本文将前瞻性的介绍一些相关概念,后续文章将给出完整的示例代码,以供参考。

一、SQL特点

SQL是一个综合的功能极强同时又简洁易学的语言,SQL集数据查询、数据操纵、数据定义和数据控制功能于一体,其主要特点如下:

1.综合统一

  • 集数据定义语言(DDL),数据操纵语言(DML),数据控制语言(DCL)功能于一体。
  • 可以独立完成数据库生命周期中的全部活动。
  • 用户数据库投入运行后,可根据需要随时逐步修改模式,不影响数据的运行。
  • 数据操作符统一。

2.高度非过程化

  • 非关系数据模型的数据操纵语言"面向过程",必须制定存取路径。
  • SQL只要提出"做什么",无须了解存取路径。
  • 存取路径的选择以及SQL的操作过程由系统自动完成。

3.面向集合的操作方式

  • 非关系数据模型采用面向记录 的操作方式,操作对象是一条记录。操作起来较为复杂繁琐,每次查询耗时耗力。
  • SQL采用集合操作 方式,即操作对象、查找结果可以是元组的集合 ,一次插入、删除、更新操作的对象可以是元组的集合

4.以同一种语法结构提供多种使用方法

  • SQL是独立的语言,能够独立地用于联机交互的使用方式。
  • SQL又是嵌入式语言,SQL能够嵌入到高级语言(例如C,C++,Java)程序中,供程序员设计程序时使用。

5.语言简洁,易学易用

  • SQL功能极强,但由于设计巧妙,语言十分简洁,完成核心功能只用了9 个动词

二、SQL的基本概念

支持SQL的关系数据库管理系统同样支持关系数据库三级模式结构。结构示意图如下:

基本表------模式【一个确切的关系用基本表的形式进行呈现】

本身独立存在的表,SQL中一个关系就对应一个基本表。一个(或多个)基本表对应一个存储文件,一个表可以带若干索引。

存储文件------内模式【如何存储,在计算机中的存储方法】

逻辑结构组成了关系数据库的内模式。物理结构是任意的,对用户透明。

视图------外模式【虚表,导出的结果呈现表】

从一个或几个基本表导出的表。数据库中只存放视图的定义而不存放视图对应的数据,视图是一个虚表,用户可以在视图上再定义视图。

++简单理解,其实每一个具体的关系就是一张基本表 ,即一种模式 ;而这张基本表在计算机的存储 ,即为它的内模式 ,便体现着如何存储;对于这一个关系进行某些操作之后(查询、投影等)形成的新的导出表便为视图 (这是虚构的表++

三、具体模式实例

为方便后续代码编写,本文在此引入学生-课程S-T模式,包含以下三个表,后续的代码创建以及编写均围绕这三张表展开。

相关推荐
lilye6620 分钟前
程序化广告行业(78/89):多因素交织下的行业剖析与展望
数据库·zookeeper·nosql
文牧之34 分钟前
PostgreSQL 的统计信息
运维·数据库·postgresql
小鱼计算机41 分钟前
【5】深入学习npm-Nodejs开发入门
前端·学习·npm·node.js
喵手42 分钟前
如何使用 Spring Boot 实现分页和排序?
数据库·spring boot·后端
web_Hsir1 小时前
CSS 学习01 定位、阴影与伪元素
前端·css·学习
s_yellowfish1 小时前
JAVA虚拟机(JVM)学习
java·jvm·学习
炫友呀1 小时前
python求π近似值
python·学习·算法
benyuanone1 小时前
maven编译jar踩坑[sqlite.db]
数据库·maven·jar
鸿乃江边鸟2 小时前
Starrocks的Bitmap索引和Bloom filter索引以及全局字典
大数据·starrocks·sql
二狗哈2 小时前
go游戏后端开发34:补杠功能与到时出牌
数据库·游戏·golang