MySQL深入01-SQL语言-数据字典-服务器变量-数据操作DML-视图

本文涉及的产品
RDS MySQL DuckDB 分析主实例,基础系列 4核8GB
RDSClaw,2核4GB
RDS DuckDB + QuickBI 企业套餐,8核32GB + QuickBI 专业版
简介:

SQL语言的组成部分

常见分类:

1
2
3
DDL:数据定义语言
DCL:数据控制语言,如授权
DML:数据操作语言

其它分类:

1
2
3
4
5
6
完整性定义语言:
     DDL的一部分功能约束
     约束:包括主键,外键,唯一键,条件,非空,事务等各类约束
视图定义:即虚表,就是存储下来的SELECT语句
事务控制
嵌入式SQL和动态SQL


数据字典:系统编目(system catalog)

作用:保存数据库服务器上的元数据

保存元数据的数据库有:

1
2
3
information_schema
mysql
performance_schema

元数据包括

1
2
3
4
5
6
7
8
9
10
11
关系名称
关系的各字段名称
各字段的数据类型和长度
约束
关系上的视图名称及视图的定义
授权用户名称
用户的授权和帐户信息
统计类的数据
关系字段的个数
关系中的行数
关系的存储方法


SQL语言的数据类型及属性修饰符

字符型1:char,varchar,text等

1
2
3
4
5
6
7
8
9
# 对应可用属性修饰符:
NOT NULL:非空约束
NULL:允许为空
DEFAULT ‘string’:默认值,不适用于text类型
CHARACTER SET ‘字符集’:设定字符集
     查看当前MySQL字符集:show variables like ‘%char%’;
     查看可使用字符集:show character  set ;
COLLATION:设定字符集的排序规则
     查看可用排序规则:show collation;

字符型2:binary,varbinary,blob等

1
2
3
# 对应可用属性修饰符
NOT NULL,NULL
DEFAULT:不适用于blob类型

整型

1
2
3
4
5
# 对应可用属性修饰符:
AUTO_INCREMENT:自动增长(前提:非空、唯一,支持索引,非负值)
UNSIGNED:无符号
NOT NULL,NULL
DEFAULT

浮点型

1
2
3
4
# 对应可用属性修饰符:
NOT NULL,NULL
DEFAULT
UNSIGNED

日期时间型

1
2
3
# 对应可用属性修饰符:
NOT NULL,NULL
DEFAULT

内置类型

1
2
3
4
5
6
# ENUM和SET的区别
     ENUM:枚举,一般存储字串,只能取其中一个使用
     SET:集合,一般存储单个字符,可组合各字符形成字串使用
# 对应可用属性修饰符:
NOT NULL,NULL
DEFAULT

MySQL中的服务器变量

支持修改的服务器变量

1
2
3
4
5
6
# 一般分类
     动态变量:可在MySQL运行时修改
     静态变量:在配置文件中修改其值,其重启后方能生效
# 从其生效范围来分类
     全局变量:服务器级别,修改之后仅对新建立的会话有效
     会话变量:会话级别,仅对当前会话有效;会话建立时,从全局继承各变量

查看服务器变量

1
2
3
4
5
法1:show [global|session] variables [like ‘’];
# 注:默认是session变量
法2: select  @@{global|session}.Variable_Name;
# 如select @@global.sql_mode;
法3: select  * from information_schema.global_variables where variable_name=’Some_Variable_Name’;

修改服务器变量

1
2
3
# 前提:默认仅管理员有权限修改全局变量
set  {global|session} Variable_Name=’Value’;
# 注:无论是全局还是会话级别的动态变量修改,在重启mysqld后都会失效;若想永久生效,可定义在配置文件中的相应段中[mysqld]


MySQL中的数据操作

数据库操作

wKiom1NPF8vwKKU_AAPKpcatHQg162.jpg

表操作

创建表

wKioL1NPF-OCFlu6AA63m-UncI8811.jpg

删除表

wKiom1NPGBujtIAIAAG16GQu_dI321.jpg

修改表结构

wKiom1NPGCiSgK09ABFJy1D8s-U530.jpg

数据操作

包括插入(Insert)替换(Replace)更新(Update)删除(Delete)操作

wKioL1NPF8_Rvaq6AApoQExArMI842.jpg


MySQL的视图

本质:视图就是存储下来的select语句

创建视图

1
2
create view View_Name as select_clause
# 如 create view stu as select Name,Age,ClassID from students;

显示视图的创建属性

1
show create view stu;

使用:授权用户权限时,只指定视图,则用户只能查看到视图内的内容,而不能查看全部数据了


注:MySQL中的Select 操作比较复杂,也是很重要的部分,所以下一篇单独讲解











本文转自 xxrenzhe11 51CTO博客,原文链接:http://blog.51cto.com/xxrenzhe/1396838,如需转载请自行联系原作者
相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
目录
相关文章
|
7月前
|
关系型数据库 MySQL 数据库
阿里云数据库RDS费用价格:MySQL、SQL Server、PostgreSQL和MariaDB引擎收费标准
阿里云RDS数据库支持MySQL、SQL Server、PostgreSQL、MariaDB,多种引擎优惠上线!MySQL倚天版88元/年,SQL Server 2核4G仅299元/年,PostgreSQL 227元/年起。高可用、可弹性伸缩,安全稳定。详情见官网活动页。
1281 152
|
7月前
|
SQL 存储 关系型数据库
MySQL体系结构详解:一条SQL查询的旅程
本文深入解析MySQL内部架构,从SQL查询的执行流程到性能优化技巧,涵盖连接建立、查询处理、执行阶段及存储引擎工作机制,帮助开发者理解MySQL运行原理并提升数据库性能。
|
7月前
|
关系型数据库 MySQL 数据库
阿里云数据库RDS支持MySQL、SQL Server、PostgreSQL和MariaDB引擎
阿里云数据库RDS支持MySQL、SQL Server、PostgreSQL和MariaDB引擎,提供高性价比、稳定安全的云数据库服务,适用于多种行业与业务场景。
952 156
|
7月前
|
SQL 监控 关系型数据库
SQL优化技巧:让MySQL查询快人一步
本文深入解析了MySQL查询优化的核心技巧,涵盖索引设计、查询重写、分页优化、批量操作、数据类型优化及性能监控等方面,帮助开发者显著提升数据库性能,解决慢查询问题,适用于高并发与大数据场景。
|
7月前
|
关系型数据库 分布式数据库 数据库
阿里云数据库收费价格:MySQL、PostgreSQL、SQL Server和MariaDB引擎费用整理
阿里云数据库提供多种类型,包括关系型与NoSQL,主流如PolarDB、RDS MySQL/PostgreSQL、Redis等。价格低至21元/月起,支持按需付费与优惠套餐,适用于各类应用场景。
|
7月前
|
SQL 监控 关系型数据库
查寻MySQL或SQL Server的连接数,并配置超时时间和最大连接量
以上步骤提供了直观、实用且易于理解且执行的指导方针来监管和优化数据库服务器配置。务必记得,在做任何重要变更前备份相关配置文件,并确保理解每个参数对系统性能可能产生影响后再做出调节。
762 11
|
SQL Oracle 关系型数据库
【OH】常用数据字典脚本说明 SQL Scripts
来源于 http://docs.oracle.com/cd/E11882_01/server.112/e40402/scripts.htm  ,主要对一些数据字典脚本进行说明。
1206 0
|
关系型数据库 MySQL 网络安全
5-10Can't connect to MySQL server on 'sh-cynosl-grp-fcs50xoa.sql.tencentcdb.com' (110)")
5-10Can't connect to MySQL server on 'sh-cynosl-grp-fcs50xoa.sql.tencentcdb.com' (110)")
|
SQL 存储 监控
SQL Server的并行实施如何优化?
【7月更文挑战第23天】SQL Server的并行实施如何优化?
824 13

推荐镜像

更多