数据库系统原理:第四章:SQL与关系数据库基本操作

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 学习

第一节:SQL概述

1.SQL是一种数据库查询和程序设计语言,主要用于存取数据以及查询、更新和管理关系数据库系统,
SQL的功能主要是查询,除此之外还包括数据定义、数据操纵、和数据控制等与数据库有关的一系列功能。
2.SQL具有以下特点:

(1)SQL不是某个特定数据库供应商专有的语言
(2)SQL简单易学
(3)SQL是一种强有力的语言,灵活使用其语言元素,可以进行非常复杂和高级的数据库操作
(4)SQL语句不区分大小写

3.数据定义语言的主要功能是对数据库及数据库中的各种对象进行创建、删除、修改等操作
4.数据定义语言的主要SQL语句有:

(1)CREATE
(2)ALTER
(3)DEOP

5.数据操纵语言的主要SQL语句有:

(1)select
(2)insert
(3)update
(4)delete

第二节:MySQL预备知识

1.MySQL是一个关系数据库管理系统(RDBMS)
2.MySQL具有客户/服务器体系结构,最初由瑞典Mysql AB公司开发
3.MySQL的特点:

(1)体积小
(2)速度快
(3)开放源代码
(4)遵循GPL(GNU通用公共许可证)

4.常量是指在程序运行过程中值不变的量
5.常量可以分为以下几类:

(1)字符串常量
(2)数值常量
(3)十六进制常量
(4)时间日期常量
(5)位字段值
(6)布尔值
(7)NULL值

6.表达式是常量、变量、列名、复杂计算、运算符和函数的组合
7.MySQL提供了很多内置函数,主要类型有:

(1)数学函数
(2)聚合函数
(3)字符串函数
(4)日期和时间函数
(5)加密函数
(6)流程控制函数
(7)格式化函数
(8)类型转换函数
(9)系统信息函数

8.目前使用MySQL数据库管理系统构建各种信息管理系统或互联网网站的应用环境,主要有两种架构方式:

(1)LAMP
(2)WAMP

第三节:数据定义

1.MySQL创建数据库:

create database、create schema

2.MySQL中用来修改已被创建的数据库的相关参数

alter database、alter schema

3.索引是指DBMS根据表中的一列或若干列按照一定顺序建立的列值与记录行之间的对应关系表
4.根据用途,索引在逻辑上分为三类:

(1)普通索引(index)
(2)唯一性索引(unique)
(3)主键(primary key)

5.在MySQL数据库中,创建索引的方式:

(1)create index
(2)create table
(3)alter table

第四节:数据更新

update tbl_name set col_name1 = expr1, col_name2 = expr2... where where_condition

insert into tbl_name(col_name1,...) values (expr1...)

insert into tbl_name set col_name = expr,...

第五节:数据查询

1.查询语句

select
all|distinct|distinctrow
form table_references
where where_condition
group by col_name|expr|position
asc|desc,...
limit row_count

2.聚合函数通常是数据库系统中一类系统内置函数,常用于对一组数值进行计算,然后返回单个值
3.MySQL中常用聚合函数有

(1)count
(2)max
(3)min
(4)sum
(5)avg
(6)std或stddev 其功能是返回给定表达式中所有值的标准值
(7)variance 其功能是返回给定表达式中所有值的方差
(8)group_concat
(9)bir_or
(10)bir_and
(11)bir_xor

第六节:视图

1.视图时一个或多个表或其他视图中通过查询语句导出的表,它也包含一系列带有名称的数据列和若干条数#####据行,并有自己的视图名
2.视图与基本表的区别是:

(1)视图不是数据库中真实的表,而是一张虚拟表,其结构和数据是建立在对数据库中真实表的查询基础上的
(2)视图的内容是有存储在数据库中进行查询操作的SQL语句来定义的,它的列数据与行数据均来自于定义视图的查询所引用的真实表,并且这些数据是在引用视图时动态生成的
(3)视图不是以数据集的形式存储在数据库中,它所对应的数据实际上是存储在视图所引用的真实表(基本表)中
(4)视图是用来查看存储在别处的数据的一种虚拟表,而其自身不存储数据

3.使用视图的优点:

(1)集中分散数据
(2)简化查询语句
(3)重用SQL语句
(4)保护数据安全
(5)共享所需数据
(6)更改数据格式

4.创建视图:

create view view_name as ...

5.对于可更新的视图,需要该视图中的行和基本表中的行之间具有一对一的关系
6.视图用于查询检索,主要体现在以下应用中:

(1)利用视图简化复杂的表连接
(2)使用视图重新格式化检索出的数据
(3)使用视图过滤不想要的数据

相关实践学习
MySQL数据库快速部署实践
本场景主要介绍如何在一台配置了CentOS 7.7版本的ECS实例(云服务器)上安装mysql,执行mysql的常用操作,学习基本的SQL语句。
目录
相关文章
|
3月前
|
存储 SQL 关系型数据库
mysql底层原理:索引、慢查询、 sql优化、事务、隔离级别、MVCC、redolog、undolog(图解+秒懂+史上最全)
mysql底层原理:索引、慢查询、 sql优化、事务、隔离级别、MVCC、redolog、undolog(图解+秒懂+史上最全)
mysql底层原理:索引、慢查询、 sql优化、事务、隔离级别、MVCC、redolog、undolog(图解+秒懂+史上最全)
|
2月前
|
SQL 容灾 安全
云时代SQL Server的终极答案:阿里云 RDS SQL Server如何用异地容灾重构系统可靠性
在数字化转型的浪潮中,数据库的高可用性已成为系统稳定性的生命线。作为经历过多次生产事故的资深开发者,肯定深知传统自建SQL Server架构的脆弱性——直到遇见阿里云 RDS SQL Server,其革命性的异地容灾架构彻底改写了游戏规则。
|
6月前
|
SQL 安全 关系型数据库
SQL注入之万能密码:原理、实践与防御全解析
本文深入解析了“万能密码”攻击的运行机制及其危险性,通过实例展示了SQL注入的基本原理与变种形式。文章还提供了企业级防御方案,包括参数化查询、输入验证、权限控制及WAF规则配置等深度防御策略。同时,探讨了二阶注入和布尔盲注等新型攻击方式,并给出开发者自查清单。最后强调安全防护需持续改进,无绝对安全,建议使用成熟ORM框架并定期审计。技术内容仅供学习参考,严禁非法用途。
912 0
|
5月前
|
SQL 存储 自然语言处理
SQL的解析和优化的原理:一条sql 执行过程是什么?
SQL的解析和优化的原理:一条sql 执行过程是什么?
SQL的解析和优化的原理:一条sql 执行过程是什么?
|
6月前
|
SQL 人工智能 自然语言处理
Text2SQL圣经:从0到1精通Text2Sql(Chat2Sql)的原理,以及Text2Sql开源项目的使用
Text2SQL圣经:从0到1精通Text2Sql(Chat2Sql)的原理,以及Text2Sql开源项目的使用
Text2SQL圣经:从0到1精通Text2Sql(Chat2Sql)的原理,以及Text2Sql开源项目的使用
|
8月前
|
关系型数据库 MySQL 数据库
RDS用多了,你还知道MySQL主从复制底层原理和实现方案吗?
随着数据量增长和业务扩展,单个数据库难以满足需求,需调整为集群模式以实现负载均衡和读写分离。MySQL主从复制是常见的高可用架构,通过binlog日志同步数据,确保主从数据一致性。本文详细介绍MySQL主从复制原理及配置步骤,包括一主二从集群的搭建过程,帮助读者实现稳定可靠的数据库高可用架构。
440 9
RDS用多了,你还知道MySQL主从复制底层原理和实现方案吗?
|
7月前
|
SQL 缓存 Java
框架源码私享笔记(02)Mybatis核心框架原理 | 一条SQL透析核心组件功能特性
本文详细解构了MyBatis的工作机制,包括解析配置、创建连接、执行SQL、结果封装和关闭连接等步骤。文章还介绍了MyBatis的五大核心功能特性:支持动态SQL、缓存机制(一级和二级缓存)、插件扩展、延迟加载和SQL注解,帮助读者深入了解其高效灵活的设计理念。
|
10月前
|
SQL 存储 关系型数据库
MySQL进阶突击系列(01)一条简单SQL搞懂MySQL架构原理 | 含实用命令参数集
本文从MySQL的架构原理出发,详细介绍其SQL查询的全过程,涵盖客户端发起SQL查询、服务端SQL接口、解析器、优化器、存储引擎及日志数据等内容。同时提供了MySQL常用的管理命令参数集,帮助读者深入了解MySQL的技术细节和优化方法。
|
1月前
|
关系型数据库 MySQL 数据库
自建数据库如何迁移至RDS MySQL实例
数据库迁移是一项复杂且耗时的工程,需考虑数据安全、完整性及业务中断影响。使用阿里云数据传输服务DTS,可快速、平滑完成迁移任务,将应用停机时间降至分钟级。您还可通过全量备份自建数据库并恢复至RDS MySQL实例,实现间接迁移上云。

热门文章

最新文章

下一篇
oss教程