《数据库系统概论》知识点归纳——第三章

本文详细介绍了SQL的结构化特点、基本概念,包括模式定义、数据定义、数据查询、数据更新等内容。重点讲解了SQL在创建、修改、删除模式和基本表的操作,以及索引的建立和管理。同时,对数据查询的各个方面进行了深入阐述,如单表查询、连接查询、嵌套查询、集合查询和视图的使用。
摘要由CSDN通过智能技术生成

3.1SQL概述

  • 结构化查询语言(SQL)是关系数据库的标准语言。

SQL的特点:

  • 综合统一
    • SQL集数据定义语言、数据操纵语言、数据控制语言的功能于一体,可以独立完成数据库生命周期中的全部活动。
    • 关系模型中数据结构的单一性带来了数据操作符的统一性,克服了非关系系统由于信息表示方式的多样性带来的操作复杂性。
  • 高度非过程化
    • 用SQL进行数据操作时,无需了解存取路径,存取路径的选择以及SQL的操作过程由系统自动完成。
  • 面向集合的操作方式
    • 非关系数据模型采用面向记录的操作方式,操作对象是一条记录。
    • SQL采用集合操作方式,不仅操作对象、查找结果可以是元组的集合,一次插入、删除、更新操作的对象也可以是元组的集合。
  • 以同一种语法结构提供多种使用方式
    • SQL既能独立地用于联机交互的使用方式,又能够嵌入到高级语言程序中。
  • 语言简洁,易学易用
    • SQL的动词:

SQL的动词

SQL的基本概念:

  • 支持SQL的关系数据库的外模式包括若干视图(view)和部分基本表(base table),模式包括若干基本表,内模式包括若干存储文件。

SQL关系数据库

  • 可以用SQL对基本表视图进行查询或其他操作,基本表和视图都是关系。
    • 基本表是本身独立存在的表,在关系数据库管理系统中一个关系对应一个基本表。
    • 一个或多个基本表对应一个存储文件,一个表可以带若干索引,索引也存放在存储文件中。
  • 存储文件的逻辑结构组成了关系数据库的内模式。
  • 存储文件的物理结构对最终用户是隐蔽的。
  • 视图是从一个或几个基本表导出的表,数据库中只存放视图的定义不存放视图对应的数据,这些数据存放在到处视图的基本表中,因此视图是一个虚表,可以在视图上再定义视图

 

3.3数据定义

  • SQL的数据定义功能包括模式定义、表定义、视图和索引的定义:

  • SQL不提供修改模式定义和修改视图定义的操作。
  • 一个关系数据库管理系统的实例中可以建立多个数据库,一个数据库中可以建立多个模式,一个模式下通常包括多个表、视图和索引等数据库对象。

定义模式:

  • 模式定义语句:CREATE SCHEMA<模式名>AUTHORIZATION<用户名>;
    • 如果没有指定<模式名>,那么<模式名>隐含为<用户名>
    • 创建模式的用户必须拥有数据库管理员权限,或者获得了管理员授予的CREATE SCHEMA的权限。
  • 定义模式即定义一个命名空间,在这个空间里可以进一步定义该模式包含的数据库对象,如基本表、视图、索引等
    • 可以在创建模式的同时在这个模式定义中进一步创建基本表、视图,定义授权。

删除模式:

  • 删除模式语句:DROP SCHEMA<模式名><CASCADE|RESTRICT>;
    • CASCADE 和 RESTRICT 必须二选一。
    • CASCADE(级联):在删除模式的同时把该模式中所有的数据库对象全部删除,
    • RESTRICT(限制):如果该模式已经定义了下属的数据库对象,则拒绝该删除语句的执行。只有当该模式中没有任何下属的对象时才能执行该语句。

定义基本表:

  • 定义基本表语句:

CREATE TABLE<表名>(<列名><数据类型>[列级完整性约束条件],

<列名><数据类型>[列级完整性约束条件],

……

<表级完整性约束条件>

);

  • 如果完整性约束条件涉及多个属性列,那么必须定义在表级上。
  • 与表有关的完整性约束条件存入系统的数据字典中。

完整性约束:

  • 列级完整性约束:
    • 标记某属性为主码:Sno CHAR(9) PRIMARY KEY
    • 标记某属性取唯一值:Sname CHAR(20) UNIQUE
    • 标记某属性不能取空值:Cname CHAR(40) NOT NULL
  • 表级完整性约束:
    • 标记外码FOREIGN KEY(Cpno)REFERENCES Course(Cno)   //Cpno是外码,被参照表是Course,被参照列是Cno
    • 主码由两个属性构成时标记主码PRIMARY KEY(Sno,Cno)

数据类型:

  • 定义表的各种属性时需要指明其数据类型长度
  • 常用数据类型:

数据类型

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值