【MySQL】——关系数据库标准语言SQL(大纲)

🎃个人专栏:

🐬 算法设计与分析:算法设计与分析_IT闫的博客-CSDN博客

🐳Java基础:Java基础_IT闫的博客-CSDN博客

🐋c语言:c语言_IT闫的博客-CSDN博客

🐟MySQL:数据结构_IT闫的博客-CSDN博客

🐠数据结构:​​​​​​数据结构_IT闫的博客-CSDN博客

💎C++:C++_IT闫的博客-CSDN博客

🥽C51单片机:C51单片机(STC89C516)_IT闫的博客-CSDN博客

💻基于HTML5的网页设计及应用:基于HTML5的网页设计及应用_IT闫的博客-CSDN博客​​​​​​

🥏python:python_IT闫的博客-CSDN博客

🐠离散数学:离散数学_IT闫的博客-CSDN博客

欢迎收看,希望对大家有用!

目录

 

🎯SQL概述

🎃SQL的特点

🎐综合统一

🎐 高度非过程化

🎐面向集合的操作方式

🎐以同一种语法结构提供多种使用方式

🎐语言简洁,易学易用

🎃SQL的基本概念

🎐SQL支持关系数据库三级模式结构

🎐基本表

🎐存储文件

🎐视图

🎯数据定义

💻SQL的数据定义功能:

💻数据字典

🎯数据查询

🐟语句格式

🎯数据更新

💎 插入数据

 💎修改数据

 💎删除数据

🎯空值的处理

🎯视图

🎯小结


🎯SQL概述

🎃SQL的特点

🎐综合统一

  • 集数据定义语言(DDL),数据操纵语言(DML),数据控制语言(DCL)功能于一体
  • 可以独立完成数据库生命周期中的全部活动:
  1. 定义和修改、删除关系模式,定义和删除视图,插入数据,建立数据库;
  2.  对数据库中的数据进行查询和更新;
  3.  数据库重构和维护
  4. 数据库安全性、完整性控制,以及事务控制
  5. 嵌入式SQL和动态SQL定义
  • 用户数据库投入运行后,可根据需要随时逐步修改模式,不影响数据库的运行。
  • 数据操作符统一

🎐 高度非过程化

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

🎐面向集合的操作方式

  • 非关系数据模型采用面向记录的操作方式,操作对象是一条记录
  • SQL采用集合操作方式  
  • 操作对象、查找结果可以是元组的集合  
  • 一次插入、删除、更新操作的对象可以是元组的集合

🎐以同一种语法结构提供多种使用方式

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

🎐语言简洁,易学易用

  • SQL功能极强,完成核心功能只用了9个动词。

🎃SQL的基本概念

🎐SQL支持关系数据库三级模式结构

🎐基本表

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

🎐存储文件

  • 逻辑结构组成了关系数据库的内模式
  • 物理结构对用户是隐蔽的

🎐视图

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

🎯数据定义

💻SQL的数据定义功能:

  • 模式定义
  • 表定义
  • 视图和索引的定义

💻数据字典

数据字典是关系数据库管理系统内部的一组系统表,它记录了数据库中所有对象的定义信息以及一些统计信息:

  • 关系模式、表、视图、索引的定义
  • 完整性约束的定义
  • 各类用户对数据库的操作权限
  • 统计信息等

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

🎯数据查询

🐟语句格式

SELECT [ALL|DISTINCT] <目标列表达式>[,<目标列表达式>] …        

FROM <表名或视图名>[,<表名或视图名> ]…|(SELECT 语句)  [AS]<别名>

[ WHERE <条件表达式> ]

[ GROUP BY <列名1> [ HAVING <条件表达式> ] ]

[ ORDER BY <列名2> [ ASC|DESC ] ];

  • SELECT子句:指定要显示的属性列
  • FROM子句:指定查询对象(基本表或视图)
  • WHERE子句:指定查询条件
  • GROUP BY子句:对查询结果按指定列的值分组,该属性列值相等的元组为一个组。通常会在每组中作用聚集函数。
  • HAVING短语:只有满足指定条件的组才予以输出
  • ORDER BY子句:对查询结果表按指定列值的升序或降序排序

🎯数据更新

💎 插入数据

两种插入数据方式:

  • 插入元组
  • 插入子查询结果
    • 可以一次插入多个元组

 💎修改数据

语句格式:

UPDATE  <表名>    

SET  <列名>=<表达式>[,<列名>=<表达式>]…    

[WHERE <条件>];

功能:

  • 修改指定表中满足WHERE子句条件的元组
  • SET子句给出<表达式>的值用于取代相应的属性列
  • 如果省略WHERE子句,表示要修改表中的所有元组

 💎删除数据

语句格式:

DELETE        

FROM     <表名>        

[WHERE <条件>];

功能:

删除指定表中满足WHERE子句条件的元组

WHERE子句:

  • 指定要删除的元组
  • 缺省表示要删除表中的全部元组,表的定义仍在字典中

🎯空值的处理

空值就是“不知道”或“不存在”或“无意义”的值

一般有以下几种情况:

  • 该属性应该有一个值,但目前不知道它的具体值
  • 该属性不应该有值
  • 由于某种原因不便于填写

属性定义(或者域定义)中

  • 有NOT NULL约束条件的不能取空值
  • 加了UNIQUE限制的属性不能取空值
  • 码属性不能取空值

🎯视图

回顾:三级模式两层映像结构

对应概念模式的数据在SQL中被称为基本表(Table), 而对应外模式的 数据称为视图(View)。视图不仅包含外模式,而且包含其E-C映像。

SQL数据库结构

  • 基本表是实际存储于存储文件中的表,基本表中的数据是需要存储的
  • 视图在SQL中只存储其由基本表导出视图所需要的公式,即由基本表产生视图的映像信息,其数据并不存储,而是在运行过程中动态产生与维护的。基表中的数据发生变化,从视图中查询出的数据也随之改变。
  • 对视图数据的更改最终要反映在对基本表的更改上。

🎯小结

  • SQL可以分为数据定义数据查询数据更新数据控制四大部分
  • SQL是关系数据库语言的工业标准。大部分数据库管理系统产品都能支持SQL92,但是许多数据库系统只支持SQL99、SQL2008和SQL2011的部分特征,至今尚没有一个数据库系统能够完全支持SQL99以上的标准。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/417851.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

从零开始配置vim(Windows版)

事情是这样的&#xff0c;之前linux下vim用习惯了...然后就给自己win下vscode也装了个vim插件&#xff0c;用下来还是感觉不顺手&#xff0c;并且处理太多文本时有明显卡顿&#xff0c;于是乎自己配了下win版的vim。 不过好像也并不是从零开始的...初始基础版的.vimrc有copy他们…

【前端设计】流光按钮

欢迎来到前端设计专栏&#xff0c;本专栏收藏了一些好看且实用的前端作品&#xff0c;使用简单的html、css语法打造创意有趣的作品&#xff0c;为网站加入更多高级创意的元素。 css body{height: 100vh;display: flex;justify-content: center;align-items: center;background…

16k+ start 一个开源的的监控系统部署教程

安装条件 Linux或macOS系统 4GB内存 开放 33014、33174、3183端口 1.安装 1、下载源码 首先使用 git 克隆源码到本地 git clone -b main https://github.com/SigNoz/signoz.git && cd signoz/deploy/ 方式1&#xff1a;运行 install.sh 脚本一键安装 ./install.s…

西瓜书读书笔记整理(十二) —— 第十二章 计算学习理论

第十二章 计算学习理论&#xff08;上&#xff09; 12.1 基础知识12.1.1 什么是计算学习理论&#xff08;computational learning theory&#xff09;12.1.2 什么是独立同分布&#xff08;independent and identically distributed, 简称 i . i . d . i.i.d. i.i.d.&#xff0…

扩散模型:Diffusion Model原理剖析

Diffusion Model 视频Training 第5行是唯一需要解释的地方, x 0 x_{0} x0​ 是干净的图片, ϵ θ \epsilon _{\theta } ϵθ​是前面说的Noise Predictor,它的输入包括加噪声之后的图像(红色框)以及时序 t t t , ϵ \epsilon ϵ 是训练的target也就是添加的噪声。它其…

Java代码审计Shiro反序列化DNS利用链CC利用链AES动态调试

目录 0x00 前言 0x01 Java原生反序列化介绍 0x02 安全问题1&#xff1a;重写toString方法&#xff08;打印对象时触发&#xff09; 0x03 安全问题2&#xff1a;重写readObject&#xff08;反序列化时触发&#xff09; 0x04 测试URLDNS链 0x05 Shiro550生成RememberMe Coo…

数据结构【DS】Ch6 图

文章目录 图的基本概念图的存储及基本操作图的遍历图的应用图的连通性问题最小生成树最短路径问题拓扑序列关键路径 图的基本概念 图的存储及基本操作 图的遍历 图的应用 图的连通性问题 最小生成树 最短路径问题 拓扑序列 关键路径

GetShell的姿势

0x00 什么是WebShell 渗透测试工作的一个阶段性目标就是获取目标服务器的操作控制权限&#xff0c;于是WebShell便应运而生。Webshell中的WEB就是web服务&#xff0c;shell就是管理攻击者与操作系统之间的交互。Webshell被称为攻击者通过Web服务器端口对Web服务器有一定的操作权…

网络编程01 常见名词的一些解释

本文将讲解网络编程的一些常见名词以及含义 在这之前让我们先唠一唠网络的产生吧,其实网络的产生也拯救了全世界 网络发展史 网络的产生是在美苏争霸的期间,实际上双方都持有核武器,希望把对方搞垮的同时不希望自己和对方两败俱伤. 希望破坏对方的核武器发射,这就涉及到三个方面…

Intel 显卡小结

Intel显卡从很早前的i740&#xff08;98年2月&#xff0c;4或8M现存&#xff0c;i740的RAMDAC为203MHZ,支持2X AGP规格,核心频率80MHZ,采用8M速度为100MHZ的SGRAM显存,像素填充率为55MPixels/s,三角形生成速度为500K Trianglws/s,支持DVD解压&#xff0c;AGP 2X&#xff0c;同时…

Python 作图

先在纯python基础上&#xff0c;安装matplotlib&#xff1a;pip install matplotlib 折线图 plot([x],y,[fmt],dataNone,**kwargs) 详见matplotlib.pyplot.plot — Matplotlib 3.1.2 documentation []表示可以不传&#xff0c;fmt传字符串改样式。 画一个试试&#xff1a;…

一个好用的工具,对网工来说是绝杀技!

上午好&#xff0c;我是老杨。 提到用人&#xff0c;很多单位和管理者第一反应都是应聘者的能力。能力到底怎么界定&#xff0c;其实每个人都有不同的判定标准。 在我看来&#xff0c;做事专注&#xff0c;且能尽可能“偷懒”的网工 &#xff0c;就是我个人筛选员工的标准。 …