zoukankan      html  css  js  c++  java
  • 数据库 chapter 3 关系数据库标准语言SQL

    第三章 关系数据库标准语言SQL

    SQL集数据查询,数据操纵,数据定义和数据控制功能于一体,主要特点包括:

    综合统一(各个过程各个部分的语言风格统一)

    高度非过程化

    面向集合的操作方式

    以同一种语法结构提供多种使用方式(既可独立使用,也可以嵌入到高级语言如C程序中)

    语言简洁,易学易用(完成核心功能只用了9个动词)

    SQL通常不提供修改模式定义、修改视图定义和修改索引定义的操作。用户如果想修改这些对象,只能将它们先删除掉,然后再重建。

    SQL同样支持数据库三级模式结构(外模式,模式和内模式,模式和内模式为唯一,外模式可不唯一)

    定义模式

    基本表的定义、删除与修改

    关系模型中的一个重要概念是域,每一个属性来自一个域,它的取值必须是域中的值。在SQL中域的概念用数据类型来实现。

    每一个基本表都属于某一个模式,一个模式包含多个基本表。定义基本表时定义它所属的模式共有三种方法:

    若用户创建基本表(其他数据库对象也相同)时没有指定模式,系统根据搜索路径来确定该对象所属的模式。

    SHOW search_path;  此语句可以显示当前搜索路径。

    搜索路径的当前默认值是:$user. PUBLIC. 含义为首先搜索与用户名相同的模式名,若不存在,则使用PUBLIC模式。

    修改基本表

    删除基本表

    索引的建立与删除

    建立索引是加快查询速度de有效手段。用户可以根据应用环境的需要,在基本表上建立一个或多个索引,以提供多种存取路径,加快查找速度。

    数据查询

    SQL提供了SELECT语句进行数据库的查询,其一般格式为:

    SELECT既可以完成简单的单表查询(仅涉及一个表的查询),也可以完成复杂的连接查询和嵌套查询。

    最后形成一个结果关系作为输出。

    取消取值重复的行使用DISTINCT

    连接查询:一个查询同时涉及两个以上的表,则称之为连接查询。

    自身连接:连接操作不仅可以在两个表之间进行,也可以是一个表与其自己进行连接,称为表的自身连接。

    复合条件连接

    WHERE子句中有多个连接条件。

    嵌套查询

    相关子查询是循环查询,就是先查询一个父查询元组,传入子查询,再进行父查询,然后再进行下一个元组(就是子查询的数值需要父查询传入);而不相关子查询是一次性检查完子查询,再进行父查询。

    就是属性列名和值一一对应。

    视图的作用:

    视图能够简化用户的操作

    视图使用户能以多种角度看待同一数据

    视图对重构数据库提供了一定程度的逻辑独立性

    视图能够对机密数据提供安全保护

    适当的利用视图可以更清晰的表达查询

  • 相关阅读:
    快速登录机器&数据库
    质量报告之我见
    一些 ssh 小技巧
    virtualenv简介以及一个比较折腾的scrapy安装方法
    用scrapy数据抓取实践
    即将到来的5G,我们该做些什么准备?
    浅谈由管理者角色引出的B端产品设计思考点
    CodeForces 707C Pythagorean Triples (数论)
    UVaLive 6625 Diagrams & Tableaux (状压DP 或者 DFS暴力)
    CodeForces 707B Bakery (水题,暴力,贪心)
  • 原文地址:https://www.cnblogs.com/Cheryl06/p/7300640.html
Copyright © 2011-2022 走看看