DataBase【MySQL基础夯实使用说明(中)】

MySQL数据库

🏆当领导问你忙不忙,您怎么回复?
🔔要让领导知道你很忙,但是你的事情紧急,我可以优先处理!


文章目录


前言

在信息技术飞速发展的当下,数据的价值日益凸显,如同深埋地下的宝藏,等待着被挖掘和利用。而数据库管理系统,就像是开启这座宝藏的钥匙,其中 MySQL 更是这把钥匙中的佼佼者。它凭借自身独特的优势,在开源数据库领域中占据着举足轻重的地位,广泛应用于从个人网站到大型企业级应用的各个角落。本文将深入剖析 MySQL,从它的诞生背景、核心特性,到存储引擎的奥秘,以及丰富多样的应用场景,带你全方位认识这款备受瞩目的数据库管理系统,探寻它在数据管理世界中长盛不衰的秘诀。


提示:以下是本篇文章正文内容,下面案例仅供学习参考:

一、SQL(Structured Query Language)

SQL(Structured Query Language)是用于访问和处理数据库的标准语言,MySQL 使用 SQL 来管理和操作数据库!

1.1.DCL语句

数据控制语言(DCL,Data Control Language):用于控制数据库的访问权限和事务处理。GRANT语句用于授予用户权限,如GRANT SELECT, INSERT ON mydb. TO 'user'@'localhost';可授予user用户在本地对mydb数据库的查询和插入权限;REVOKE语句用于收回用户权限,如REVOKE INSERT ON mydb.* FROM 'user'@'localhost';可收回该用户的插入权限;COMMIT语句用于提交事务,ROLLBACK语句用于回滚事务,保证数据的一致性和完整性。*


1.1.1.管理用户

1.1.1.1.查询用户
sql 复制代码
USE mysql;
SELECT * FROM user;

1.1.1.2.创建用户
sql 复制代码
CREATE USER '用户名'@'主机名'IDENTIFIED BY '密码';

1.1.1.3.修改用户密码
sql 复制代码
ALTER USER '用户名'@'主机名'IDENTIFIED WITH mysql_native_password BY '新密码';

1.1.1.4.删除用户
sql 复制代码
DROP USER'用户名'@'主机名;

⚠️

  • 主机名可以用%符号进行通配。
  • 此类语句在实际中使用较少,主要是DBA(DataBase Administrator 数据库管理员)使用。

1.1.2.权限控制

在MySQL中定义了很多种权限,常用的如下:

权限 说明
ALL, ALL PRIVILEGES 所有数据
SELECT 查询数据
INSERT 添加数据
UPDATE 修改数据
DELETE 删除数据
ALTER 修改表
DROP 删除表/数据/视图
CREATE 创建数据库/表

1.1.2.1.查询权限
sql 复制代码
SHOW GRANTS FOR '用户名'@'主机名';

1.1.2.2.授予权限
sql 复制代码
GRANT 权限列表 ON 数据库名.表名 TO '用户名'@'主机名';

1.1.2.3.撤销权限
sql 复制代码
REVOKE 权限列表 ON 数据库名.表名 FROM'用户名'@'主机名';

二、函数

函数是指一段可以直接被另一段程序调用的程序或代码!

2.1.字符串函数

函数 功能
CONCAT(S1,S2,...Sn) 字符串拼接,将S1,S2,...Sn拼接成一个字符串
LOWER(str) 将字符串str全部转为小写
UPPER(str) 将字符串str全部转为大写
LPAD(str,n,pad) 左填充,用字符串pad对str的左边进行填充,达到n个字符串长度
RPAD(str,n,pad) 右填充,用字符串pad对str的右边进行填充,达到n个字符串长度
TRIM(str) 去掉字符串头部和尾部的空格
SUBSTRING(str,start,len) 返回从字符串str从start位置起的len个长度的字符串

语法:

sql 复制代码
SELECT 函数(参数)

2.2.数值函数

函数 功能
CEIL(x) 向上取整
FLOOR(x) 向下取整
MOD(x,y) 返回x/y的模
RAND() 返回0~1内的随机数
ROUND(x,y) 求参数x的四舍五入的值,保留y位小数

2.3.日期函数

函数 功能
CURDATE() 返回当前日期
CURTIME() 返回当前时间
NOW() 返回当前日期和时间
YEAR(date) 获取指定date的年份
MONTH(date) 获取指定date的月份
DAY(date) 获取指定date的日期
DATE ADD(date,INTERVAL expr type) 返回一个日期/时间值加上一个时间间隔expr后的时间值
DATEDIFF(date1,date2) 返回起始时间date1 和 结束时间date2之间的天数

2.4.流程函数

实现在SQL语句中进行条件筛选!

函数 功能
IF(value ,t, f) 如果value为true,则返回t,否则返回f
IFNULL(value1 ,value2) 如果value1不为空,返回value1,否则返回value2
CASE WHEN [val1 ]THEN [res1] ... ELSE [default] END 如果val1为true,返回res1,.否则返回default默认值
CASE [expr ] WHEN [val1 ] THEN [res1] ... ELSE [ default] END 如果expr的值等于val1,返回res1,...否则返回default默认值

彩蛋

👑领导,有什么工作,如果急的话,我优先处理!

相关推荐
奔波霸的伶俐虫37 分钟前
navicat导出表结构到Excel 带字段备注
数据库·oracle·excel
神经星星1 小时前
入选AAAI 2025!解决医学图像分割软边界与共现难题,中国地质大学等提出图像分割模型ConDSeg
数据库·人工智能·机器学习
喝醉酒的小白1 小时前
SQL Server:查看内存使用情况
数据库
nfgo2 小时前
在 ARM64 架构系统离线安装 Oracle Java 8 全流程指南
java·oracle·架构
emanjusaka4 小时前
一文详解 MySQL 中的间隙锁
mysql·lock·gap
CodeJourney.4 小时前
DeepSeek免费部署到WPS或Office
数据库·人工智能·算法·架构·wps
刘一二5 小时前
ORACLE 分页排序后的数据重复或缺失问题
oracle·分页排序
是小崔啊5 小时前
Redis07 - Redis底层数据结构
数据结构·数据库·redis
handsomestWei5 小时前
timescaladb时序数据库高可用docker镜像使用
数据库·docker·postgresql·时序数据库·timescaladb
iamphp5 小时前
数据库-嵌入SQL访问接口
java·数据库·sql