【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

这篇具有很好参考价值的文章主要介绍了【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

🎊专栏【MySQL】
🍔喜欢的诗句:更喜岷山千里雪 三军过后尽开颜。
🎆音乐分享【如愿】
大一同学小吉,欢迎并且感谢大家指出我的问题🥰

内容有点多,建议大家先看目录。

【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

🍔关系型数据库

⭐概念

建立在关系模型基础上,由多张相互连接的二维表组成的数据库

⭐特点

🏀使用表存储数据,格式统一,便于维护
🏀使用SQL语言操作,标准统一,使用方便
【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

🍔MySQL数据库的数据类型

通过客户端,连接MySQL数据库管理系统(DBMS),然后通过SQL语句,通过数据库管理系统创建数据库
也可以通过SQL语句,通过数据库管理系统,在指定的数据库中创建表
在一个数据库服务器中是可以创建多个数据库的,而在一个数据库中,又可以创建多张表,在表中,我们又能存储一条一条的结构
🏀所以数据库和表就是MySQL数据库的数据类型

【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

🍔SQL通用语法

🏀SQL语句可以单行或多行书写,并且以分号结尾
🏀SQL语句可以使用空格或缩进来增强语句的可读性
🏀MySQL数据库的SQL语句不区分大小写,关键字建议大写
🏀单行注释:–注释内容(或#注释内容)
🏀多行注释:/ * 注释内容 * /

🍔SQL分类

【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

⭐DDL语句操作——数据库

🎈查询所有数据库(所有数据库的名字)

show databases;

【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

🎈查询当前数据库

select database();

【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

🎈创建数据库

create database itcast;

可以加一个判断条件,如果不存在数据库的话,就创建一个,否则不创建

create database if not exists itcast;

【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

🎈创建数据库并设置字符集
create database 数据库名称 default charset 字符集;

【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

🎈删除数据库

drop database 数据库名称;

可以加一个判断条件,如果存在这个数据库,就删除,否则不删除
;

drop database if exists 数据库名称

【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

🎈使用数据库

例如

use itcast;

表示我要切换到itcast数据库

【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

⭐DDL语句操作——表

🎈查询当前数据库的所有表

show tables;

【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

⭐创建表

【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

SQL写完后要加上分号,如果没有分号,那么就可以写多行

【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句
数据库里面的字符串类型是varchar()(()里面是字符串长度)不是string

🎈查询表结构

查询 不是查询 数据库

desc 表名;

【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

🎈查询指定表的建表语句

show create table 表名;

【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句
【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

⭐DDL表操作——修改表

🎈修改数据类型

alter table 表名 modify 字段名 新数据类型(长度);

🎈修改字段名和字段类型

alter table 表名 change 旧字段名 新字段名 类型(长度) [comment 注释];

【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

🎈修改表名

alter table 表名 rename to 新表名;

【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

🎈删除字段

alter table 表名 drop 字段名;

【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

🎈添加字段

alter table 表名 add 字段名 字段数据类型 [comment 注释];

【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

🎈删除表

drop table 表名;

可以添加一个判断条件

drop table if exists 表名;

🎈删除表,并且自动创建该表

truncate table 表名;

为什么要这样子操作
虽然会重新创建该表,但是该表的所有数据都不存在了

⭐总结

【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

⭐DML语句——添加数据

🎈给 指定 字段添加数据

insert into 表名(字段名1,字段名2, ……) value(值1,值2);

🎈给 全部 字段添加数据

insert into 表名 value (值1,值2);

🎈批量添加数据

insert into 表名(字段名1,字段名2,……) value(值1,值2……)(值1,值2……)(值1,值2……);

或者

insert into 表名 value(值1,值2……)(值1,值2……)(值1,值2……);

【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句
【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

🏀注意

【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

⭐DML语句——修改数据

update 表名 set 字段名1=值1,字段名2=值2,……[where 条件];

加上where,就是修改符合条件的数据,否则修改的是所有数据
【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句
【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句
【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

🏀注意

修改语句的条件(where)可以有,也可以没有,如果没有条件,那么会修改整张表的所有数据

⭐DML语句——删除数据

delete form 表名 [where 条件]

加上where,就是修改符合条件的数据,否则修改的是所有数据

【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句
【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

🏀注意

修改语句的条件(where)可以有,也可以没有,如果没有条件,那么会修改整张表的所有数据
🏳️‍🌈delete语句不能删除某一个字段的值(但是可以用update删除)

⭐总结

【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

⭐DQL语句——查询数据

【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

🎈基本查询

🏀查询多个字段
select 字段1,字段2,字段3……form 表名;
select * from 表名;

【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句
【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

🏀设置别名
select 字段1 [AS 别名1],[AS 别名2]……from 表名;

【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

🏀去除重复记录
select distinct 字段列表 form 表名;

【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

🎈条件查询

select 字段列表 from 表名 where 条件列表;

条件
【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句
【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

🎈聚合函数

概念:就是将一列数据作为一个整体,进行纵向计算
【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

select 聚合函数(字段列表) from 表名;
🏀注意

null是不参与所有聚合函数的计算的

【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

🎈分组查询

select 字段列表 from 表名 [where 条件] group by 分组字段名 [having 分组后过滤条件];
🏀where和having的区别

执行时机不同:where是分组之前进行过滤,不满足where条件,不参与分组,而having是分组之后对结果进行过滤
判断条件不同:where不能对聚合函数进行判断,而having可以

【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

🏀注意

执行顺序:where>聚合函数>having
分组之后,查询的字段一般是聚合函数和分组字段,查询其他字段没有意义

🎈排序查询

【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

select 字段列表 from 表名 order by 字段1 排序方式1,字段2 排序方式2;

【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

🏳️‍🌈排序方式

asc 升序(默认)
desc 降序

🏀注意

如果是多字段排序,当第一个字段值相同时,才会根据第二个字段排序

🎈分页查询

select 字段列表 from 表名 limit 起始索引,查询记录数;

【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

🏀注意

【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

⭐DQL语句——执行顺序

【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

⭐总结

【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

⭐DCL语句—用户管理

DCL可以用来管理数据库成员,控制数据库的访问权限

【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

🎈查询用户

use mysql;
select * from user;

可以直接查看用户表
【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

🎈创建用户

create user '用户名'@'主机名' identified by '密码';

【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

🎈修改用户密码

alter user '用户名'@'主机名' identified with mysql_native_password by '新密码';

【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

🎈删除用户

drop user '用户名'@'主机名';

【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

🏀注意

主机名可以用%通配,使用%后,表明可以用任意主机进行访问

⭐DCL语句—权限控制

我们创建了用户后,我们会发现,用户可以登录上MySQL,但是不能访问任何的数据库,只能访问一个系统库
原因就是用户创建好了之后,并没有给用户分配权限

【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

🎈查询权限

show grants for '用户名'@'主机名';

🎈授予权限

grant 权限列表 on 数据库名.表名 to '用户名'@'主机名';

🎈撤销权限

remove 权限列表 on 数据库名.表名 from '用户名'@'主机名';

⭐总结

【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句

🥰如果大家有不明白的地方,或者文章有问题,欢迎大家在评论区讨论,指正🥰文章来源地址https://www.toymoban.com/news/detail-487854.html

到了这里,关于【从删库到跑路】MySQL系列——详细讲解SQL的DDL,DML,DQL,DCL语句的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【从删库到跑路】MySQL数据库的索引(二)——索引的使用和选择

    🎊专栏【MySQL】 🍔喜欢的诗句:更喜岷山千里雪 三军过后尽开颜。 🎆音乐分享【The Right Path】 🥰欢迎并且感谢大家指出小吉的问题 🎈没有创建索引时,执行SQL语句,查看SQL的耗时 🎈 创建索引后 ,执行SQL语句,查看SQL的耗时 比较发现,时间减少了 🎈细节 创建索引 相

    2024年02月16日
    浏览(49)
  • 【从删库到跑路】MySQL数据库的查询(单表查询,多表查询,内外连接,联合查询,子查询)

    🎊专栏【MySQL】 🍔喜欢的诗句:更喜岷山千里雪 三军过后尽开颜。 🎆音乐分享【如愿】 大一同学小吉,欢迎并且感谢大家指出我的问题🥰 在项目开发中,在进行数据库表结构设计时,会根据业务需求以及业务模块之间的关系,分析并设计表结构,由于业务之间相互关联

    2024年02月10日
    浏览(46)
  • 【从删库到跑路】MySQL数据库的索引(一)——索引的结构(BTree B+Tree Hash),语法等

    🎊专栏【MySQL】 🍔喜欢的诗句:更喜岷山千里雪 三军过后尽开颜。 🎆音乐分享【如愿】 🥰欢迎并且感谢大家指出小吉的问题 索引(index)是帮助MySQL 高效获取数据 的 有序 的 数据结构 在数据之外,数据库系统还维护着满足特定查找算法的数据结构,这些数据结构以某种方

    2024年02月16日
    浏览(52)
  • 看完这篇都有DBA级别的MySQL备份经验了,再也不害怕删库跑路了

            在做运维的路上,相信大家会跟数据库经常打交道吧,那么数据库最重要的时候什么呢,那么肯定是备份了,这篇文章主要内容是介绍了,MySQL的几种常见的备份方式,主要是分为两种,第一种是基于MySQL提供的工具来进行备份,还有一种是基于使用第三方工具来进行

    2024年02月05日
    浏览(47)
  • rm -rf 真是删库跑路的一把好手

    上回书说到《一个月黑风高的夜晚紧急完成gitlab服务器数据迁移》,因为数据迁移后原数据还是存在的,该分区硬盘快满了,进而影响了原目录下的日志存储,既然数据已经迁移到新的路径了,那原来的库直接删掉就好了,往往就是这么不经意间做了一个令人十分后怕的决定

    2024年02月05日
    浏览(38)
  • 微服务技术栈笔记从入门到跑路-SpringCloud+Gateway+Nacos+MQ+ES(保姆级)

    SpringCloud和Dubbo是微服务方案的实现 微服务技术对比 SpringCloud 和SpringBoot版本兼容需要对应 (左侧是SpringCloud的版本,右侧SpringBoot版本。两者版本需要一一对应,否者可能出现兼容性问题) (此笔记基于SpringCloud Hopxton.SR10和SpringBoot2.3.x进行记录) 微服务需要根据业务模块拆分

    2024年02月08日
    浏览(61)
  • mysql主主架构搭建,删库恢复

    主机名 IP地址 服务 角色 mysql1 192.168.44.188 mysql,keepalived mysql-master,keepalived-master mysql2 192.168.44.190 mysql,keepalived mysql-master,keepalived-backup 192.168.44.100(vip) mysql1 mysql2 设置mysql2同步mysql1 设置mysql1同步mysql2 授权测试用账户 mysql1 /etc/keepalived/keepalived.conf 检查脚本 /usr/local/bin/ch

    2024年02月16日
    浏览(38)
  • MySQL事务详细讲解

    事务 (Transaction)是指数据库中执行的一系列操作被视为一个逻辑单元,要么全部成功执行,要么全部失败回滚,保证数据的一致性和完整性。 举个简单的例子,假设有一个银行账户转账的场景: 假设有两个账户,账户 A 的余额为 1000 元,账户 B 的余额为 500 元。现在要将账

    2024年02月09日
    浏览(35)
  • MobileNet系列(万文长字详细讲解,一篇足以)

    本篇讲一下CV相关的东西,MobileNet,想必大家已经很熟悉了,包括里面的一些模块,一些轻量型思想也是经常用到的。在这里我也是想着做一下总结,整理一下,也讲一讲自己的理解和看法。卷积神经网络CNN已经普遍应用在计算机视觉领域,并且已经取得了不错的效果。近年

    2024年02月06日
    浏览(37)
  • 力扣刷MySQL-第六弹(详细讲解)

     🎉欢迎您来到我的MySQL基础复习专栏 ☆* o(≧▽≦)o *☆哈喽~我是小小恶斯法克🍹 ✨博客主页: 小小恶斯法克的博客 🎈该系列文章专栏: 力扣刷题讲解-MySQL 🍹文章作者技术和水平很有限,如果文中出现错误,希望大家能指正🙏 📜 感谢大家的关注! ❤️ 目录  🚀大的

    2024年01月20日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包