当前位置: 首页 > article >正文

计算机四级 - 数据库原理 - 第4章 「关系数据库标准语言SQL」

4.1 SQL概述

4.1.1 结构化查询语言SQL

SQL(Structured Query Language)称为结构化查询语言,它是由1974年由Boyce和Chamberi提出的,1975年至1979年IBM公司的San Jose Research Laboratory研制了关系数据库管理系统的原型系统System R,并实现了这种语1987年6月国际标准化组织采纳SQL为国际标准,1999年的SQL3拥有了更多的特征,例如递归、触发器以及对象等,它支持对象-关系数据模型

4.1.2 SQL的语言特点

  • 综合统一
  • 高度非过程化
    • 用SQL语言进行数据操作,用户只需提出“做什么”,而不必指明“怎么做”,因此用户无须了解存取路径,存取路径的选择以及SQL语句的操作过程由系统自动完成。这不但大大减轻了用户负担,而且有利于提高数据独立性
  • 面向集合的操作方式
  • 灵活的使用方法
  • 语言简洁,易学易用,功能强

4.1.3 SQL的数据类型

  • 预定义数据类型
    • 数值型:INT、SMALLINT、REAL、DOUBLE PRECSION、FLOAT、NUMERIC
    • 字符串型:CHAR 、VAR CHAR
    • 位串型:BIT 、BIT VARRING
    • 时间型:DATA 、TIME 、TIMESTAMP
    • 布尔型:BOOLEAN
  • 构造数据类型
  • 用户定义数据类型
  • 大对象类型

4.1.4 SQL语言的组成和语句类型

1. SQL语言的组成:

  • 数据定义语言(DDL):用来创建数据库的各种对象,包括数据库模式、表、视图、索引、域、触发器、自定义类型等。
  • 数据操纵语言(DML)
  • 数据控制语言(DCL)

2. SQL语句类型:

  • SQL定义语句:CREATE(创建表)、DROP(删除表)和ALTER(更新表)
  • SQL数据操纵语句:select、insert、delete、updata
  • SQL事务和控制语句:grant、revoke
  • SQL连接、会话和诊断语句:set connection

4.2 SQL的数据定义

4.2.1 模式的定义和删除

  • 定义了一个SQL模式,就是定义了一个命名空间

创建模式:CREATE SCHEMA <模式名> AUTHORIZATION <用户名>;

删除模式:DROP SCHEMA <模式名> {CASCADE | RESTRICT}

CASCADE表示级联方式,删除模式时将其下属的模式对象全部删除;

RESTRICT是约束方式,只有下属的模式对象预先已经被全部删除才能执行对模式的删除

4.2.2 基本表的定义、删除和修改

4.2.3 索引的建立和删除

一个基本表上最多只能建立一个聚簇索引。

4.3 SQL的数据查询

  • 通配符:_表示可以和任意的单个字符匹配,%表示可以和任意长的字符串匹配
  • IN 和 NOT IN 用于查找属性值属于指定集合的元组。DESC可以进行降序排列
  • 如果嵌套查询的内层查询返回的是多值,要使用ANY,且必须同时使用比较运算符

4.4 SQL的数据修改

4.5 SQL的视图

  • 视图是关系数据库系统提供给用户以多种角度观察数据库中数据的重要机制
    • 视图是使用SELECT FROM语句从一个或多个基本表(或其他视图)中导出的表,它与基本表不同,是一个虚表;对视图的一切操作最终将转换成对导出它的基本表的操作。视图一经定义就可以和基本表一样被查询,也可以在一个视图上再定义新的视图,但对视图的修改(插入、删除、更新)操作有一定的限制。

  • 行列子集视图:若一个视图是从单个基本表导出,并且只是去掉了基本表的某些行和某些列,但保留了主码
  • 带表达式的视图:若一个视图带有由基本数据经过各种计算派生出的虚拟列。
  • 分组视图:若一个视图在创建它的SELECT语句中使用了聚集函数和GROUP BY子句
  • 连接视图:若一个视图在创建它的SELECT语句中使用了两个或多个表连接

4.6 SQL的数据控制

  •  SQL的数据控制包括:安全性控制、完整性控制、并发控制和故障恢复


其余章节进我主页进行查看

相关文章:

计算机四级 - 数据库原理 - 第4章 「关系数据库标准语言SQL」

4.1 SQL概述 4.1.1 结构化查询语言SQL SQL(Structured Query Language)称为结构化查询语言&#xff0c;它是由1974年由Boyce和Chamberi提出的&#xff0c;1975年至1979年IBM公司的San Jose Research Laboratory研制了关系数据库管理系统的原型系统System R,并实现了这种语198…...

基于PMU的14节点、30节点电力系统状态估计MATLAB程序

“电气仔推送”获得资料&#xff08;专享优惠&#xff09; 程序简介&#xff1a; 程序采用三种方法对14节点和30节点电力系统状态进行评估&#xff1a; ①PMU同步向量测量单元结合加权最小二乘法&#xff08;WLS&#xff09;分析电力系统的电压幅值和相角状态&#xff1b; …...

JS超过Number的最大值

场景&#xff1a;用户输入(这个可以通过前端限制输入长度控制)或正规场景&#xff0c;大数据量展示 Number类型的最大值是2^53 - 1 解决方案一&#xff1a;BigInt BigInt 是 JavaScript 中专门用来表示任意精度整数的类型。它允许你处理超出 Number 范围的整数。 const bigNu…...

Deepseek API+Python测试用例一键生成与导出-V1.0.2【实现需求文档图片识别与用例生成自动化】

在测试工作中&#xff0c;需求文档中的图片&#xff08;如界面设计图、流程图&#xff09;往往是测试用例生成的重要参考。然而&#xff0c;手动提取图片并识别内容不仅耗时&#xff0c;还容易出错。本文将通过一个自研小工具&#xff0c;结合 PaddleOCR 和大模型&#xff0c;自…...

整形在内存中的存储(例题逐个解析)

目录 一.相关知识点 1.截断&#xff1a; 2.整形提升&#xff1a; 3.如何 截断&#xff0c;整型提升&#xff1f; &#xff08;1&#xff09;负数 &#xff08;2&#xff09;正数 &#xff08;3&#xff09;无符号整型&#xff0c;高位补0 注意&#xff1a;提升后得到的…...

基于变分推理与 Best‑of‑N 策略的元 Prompt 自动生成与优化框架

摘要 本文提出了一种融合变分推理与 Best‑of‑N 策略的元 Prompt 自动生成与优化框架&#xff0c;通过高度参数化的模板、随机扰动采样及多指标评分机制&#xff0c;实现从初始提示生成到最终输出的动态优化。同时&#xff0c;针对实际应用中对自适应参数调整、深层语义理解、…...

AI 技术在智慧农业中的应用实践

智慧农业是通过现代信息技术(如物联网、大数据、人工智能等)提升农业生产效率、降低资源消耗、改善农产品质量的现代农业模式。AI 技术在智慧农业中的应用实践涵盖了从种植到收获的全流程,以下是具体的方案和应用场景: 1. AI 在智慧农业中的应用场景 1.1 精准种植 应用场景…...

蓝牙系统的核心组成解析

一、硬件层&#xff1a;看得见的物理载体 1. 射频模块&#xff08;Radio Frequency Module&#xff09; 专业描述&#xff1a;工作在2.4GHz ISM频段&#xff0c;支持GFSK/π/4 DQPSK/8DPSK调制方式 功能类比&#xff1a;相当于人的"嘴巴"和"耳朵" 发射端…...

centos 7误删/bash 拯救方法

进入救援模式 1. 插入CentOS 7安装光盘&#xff0c;重启系统。在开机时按BIOS设置对应的按键&#xff08;通常是F2等&#xff09;&#xff0c;将启动顺序调整为CD - ROM优先。 2. 系统从光盘启动后&#xff0c;选择“Troubleshooting”&#xff0c;然后选择“Rescue a Cent…...

uniapp笔记-底部和首部标签页菜单生成

逻辑 这些都是需要配置pages.json文件。 其中底部需要手动配置tarBar&#xff0c;如&#xff1a; "tabBar": {"list":[{"pagePath": "pages/index/index","text": "首页"},{"pagePath": "pages/…...

基于Gemini 生成 Gemini Embedding

在本报告中,我们介绍了Gemini Embedding,这是一款基于谷歌功能最强大的大型语言模型Gemini的先进嵌入模型。借助Gemini的多语言和代码理解能力,Gemini Embedding能够为多种语言和文本模态的文本生成高度通用的嵌入表示。Gemini Embedding生成的表示可以预先计算并应用于多种…...

SpringBoot 和vue前后端配合开发网页拼图10关游戏源码技术分享

今天分享一个 前后端结合 的网页游戏 开发项目源码技术。 这也是我第一次写游戏类的程序&#xff0c;虽然不是特别复杂的游戏&#xff0c;但是是第一次写&#xff0c;肯定要记录一下了&#xff0c;哈哈。 游戏的内容 就是 我们显示中玩的那个 拼图碎片的 游戏&#xff0c;类似下…...

OpenCV计算摄影学(21)非真实感渲染之边缘保留滤波器edgePreservingFilter()

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 滤波是图像和视频处理中的基础操作。边缘保留平滑滤波器被广泛应用于多种不同场景[98]。 cv::edgePreservingFilter 是一种边缘保留滤波器&#…...

Qemu 详解与 ARM 虚拟机搭建指南

1. Qemu 是什么&#xff1f; Qemu&#xff08;Quick Emulator&#xff09;是一款开源的机器模拟器和虚拟化工具&#xff0c;支持多种硬件架构&#xff08;如 x86、ARM、PowerPC 等&#xff09;。它的核心功能包括&#xff1a; 动态指令翻译&#xff1a;将不同架构的指令实时翻…...

JVM并发编程AQSsync锁ReentrantLock线程池ThreadLocal

并发编程2 synchronized锁实现**AQS****ReentrantLock实现****JUC 常用类**池的概念 ThreadLocalThreadLocal原理内存泄露强引用:软引用弱引用虚引用ThreadLocal内存泄露 synchronized锁实现 synchronized是一个关键字,实现同步,还需要我们提供一个同步锁对象,记录锁状态,记录…...

CMake学习笔记(三):静态库,动态库的生成和使用

一&#xff1a;动态库 接下来我们简单的讲解下动态库的建立和使用:在后面的项目的开发过程中&#xff0c;我们使用第三方库或者我们跑这个项目的时候我们总会看到一些.so的文件&#xff0c;这些就是所谓的动态库,里面的内容就是编译后的源文件&#xff0c;是程序运行时被加载和…...

《Classifier-Free Diffusion Guidance》的核心观点与方法

介绍《Classifier-Free Diffusion Guidance》的核心观点与方法 在扩散模型&#xff08;Diffusion Models&#xff09;的研究中&#xff0c;如何在生成样本的质量与多样性之间找到平衡一直是核心挑战之一。传统的生成模型&#xff08;如GANs或Glow&#xff09;通过截断&#xf…...

什么是数学建模?数学建模是将实际问题转化为数学问题

数学建模是将实际问题转化为数学问题&#xff0c;并通过数学工具进行分析、求解和验证的过程。 一、数学建模的基本流程 问题分析 • 明确目标&#xff1a;确定需要解决的核心问题。 • 简化现实&#xff1a;识别关键变量、忽略次要因素。 • 定义输入和输出&#xff1a;明确模…...

唤起“队列”的回忆

又来博客记录自己的学习心得了&#xff0c;嘿嘿嘿(^&#xff5e;^) 目录 队列的概念和结构&#xff1a; 队列的创建和初始化&#xff1a; 队列入栈&#xff1a; 队列出栈&#xff1a; 队列的销毁&#xff1a; 取队头和队尾数据&#xff1a; 结语&#xff1a; 队列的概念…...

Linux(8.4)NFS

文章目录 一、概念二、详解NFS1&#xff09;软件名2&#xff09;服务名3&#xff09;配置文件4&#xff09;端口号5&#xff09;相关命令 三、部署NFS一、NFS服务端1&#xff09;**配置源&#xff08;本地或者网络源&#xff09;**2&#xff09;2、安装NFS**3&#xff09;启动服…...

【位运算】速算密钥:位运算探秘

文章目录 前言例题一、判定字符是否唯一二、丢失的数字三、两整数之和四、只出现⼀次的数字 II五、消失的两个数字 结语 前言 什么是位运算算法呢&#xff1f; 位运算算法是以位运算为核心操作&#xff0c;设计用来高效解决特定问题的一系列计算步骤集合。它巧妙利用位运算直接…...

STM32G070CBT6读写FLASH中的数据

向FLASH中写入数据函数 /*函数说明&#xff1a;向FLASH中写数据形参&#xff1a;addr-要写入数据的起始地址 data-准备写入数据 len-数据大小返回值&#xff1a;1-成功&#xff0c;0-失败 */ uint8_t FlashWriteData(uint64_t addr,uint8_t data[],size_t len) {uint32_t Fir…...

算法刷题记录——LeetCode篇(4) [第301~400题](持续更新)

(优先整理热门100及面试150&#xff0c;不定期持续更新&#xff0c;欢迎关注) 322. 零钱兑换 给你一个整数数组 coins &#xff0c;表示不同面额的硬币&#xff1b;以及一个整数 amount &#xff0c;表示总金额。 计算并返回可以凑成总金额所需的最少的硬币个数。如果没有任何…...

目标检测任务,如何区分两个相近似的目标

首先&#xff0c;要了解清楚检测的场景下&#xff0c;肉眼能否区分出目标的差异性。 如果可以区分&#xff0c;那观察数据周围背景的差异是否较大&#xff0c;可以先通过添加样本来提升模型的检测精度。添加样本时一定要注意&#xff0c;样本标注的准确性&#xff0c;样本的丰…...

中国在 AI 上超越美国,需要另辟蹊径

在过去的几年里&#xff0c;以大型语言模型&#xff08;LLM&#xff09;为核心的人工智能浪潮席卷全球。美国凭借其雄厚的科研基础、顶尖的技术公司以及掌握着关键硬件资源&#xff0c;牢牢占据了这一领域的领先地位。与此同时&#xff0c;中国在AI领域的进步虽然迅速&#xff…...

【实习经历Two:参与开源项目,学习并应用Git】

前端参与开源项目中使用过的git 1.参与开源项目&#xff08;必备技能——git) 参与开源项目首先需要进入自己想参加的项目页面 点击右边的Fork即可复制到自己的仓库 像个人开发时常用的add、commit和push等命令就不过多介绍了&#xff0c;在这里主要是想记录一下自己作为从未…...

AD绘图基本操作

一、基本操作 注意&#xff1a;快捷键都要在英文模式下才能生效 1、移动 按住鼠标右键移动 2、切换桌面栅格距离 G 3、英寸和毫米 尺寸切换 Q 4、元件在3D模式下的移动 3D视角鼠标左键只起到选择元器件并移动之的功能&#xff0c; 单纯鼠标右键只能平移桌面 shift鼠…...

6k ± 1 规则

6k 1 规则 是基于对质数分布规律的观察和数学证明得出的。它指出&#xff0c;除了 2 和 3 之外&#xff0c;所有质数都可以表示为 6k 1 的形式&#xff0c;其中 k 是正整数。以下是详细的证明过程&#xff1a; 1. 质数的基本性质 质数是指大于 1 的自然数&#xff0c;且只能…...

AcWing 5960:输出前k大的数 ← 小根堆

【题目来源】 https://www.acwing.com/problem/content/5963/ 【题目描述】 给定一个长度为 n 的数组 a1,a2,…,an&#xff0c;统计前 k 大的数并且把这 k 个数从大到小输出。 【输入格式】 第一行包含整数 n。 第二行包含 n 个整数 a1,a2,…,an。 第三行包含整数 k。​​​​…...

V2X验证

1. 标准和规范验证 欧洲对 DSRC 和 V2X 系统有一系列的标准和规范,主要由 ETSI (European Telecommunications Standards Institute) 和 IEEE 等组织制定。验证通常包括以下标准和规范: ETSI EN 302 571:这是DSRC在欧洲的主要标准,规定了DSRC系统的技术要求和操作条件。ET…...