MySQL语法总结

本篇博客说明:
!!!.注意此系列都用的是MySQL语句,和SQLServer,PostgreSQL有些细节上的差别!!!
1.每个操作都是先展示出语法格式
2.然后是具体例子
3.本篇注脚与文本顺讯息息相关或许会解答你的一些疑问
4.本文例子使用也是连续的,如果前面建立库没有删除就一直在,删除则之后也没有这个库
(!!!放心食用!!!)

MySQL语法

一·库的操作[1](#一·库的操作1)

1.创建库[2](#1.创建库2)

CREATE[3](#CREATE3)

语法格式:

create databases 数据库名字;

create database if not exists 数据库名字;

create database if not exists 数据库名字 character set utf8mb4 collate utf8mb4_0900_ai_ci;

mysql 复制代码
create databases test01;
mysql 复制代码
create database if not exists test01;
-- 这条语句与第一条语句很相似,但是这句更为保险
-- 两者区别在于这条语句会有警告不会报错,但是语句一再次创立同样的库时会报错,如下图
mysql 复制代码
create database if not exists test02 character set utf8mb4 collate utf8mb4_0900_ai_ci;
-- 这句的意思为创建一个字符编码集为utf8mb4
-- 而utf8mb4_0900_ai_ci则为MySQL8.0默认的排序规则


2.修改库

ALTER

alter database 数据库名字 character set 字符集编码;

alter database 数据库名字 collate 排序规则;

mysql 复制代码
alter database test01 character set gbk;

3.删除库

DROP

drop database 数据库名字;

drop database if exists 数据库名字;

mysql 复制代码
drop database test01;
mysql 复制代码
drop database if exists test02;
mysql 复制代码
-- 根据重复删除来对比有无 if exists 的使用区别
drop database test01;
drop database if exists test01;

这里通过上图我们就发现如果加上"if exists"那么删除一个已经删除过的库就不会报错,而是会有一个警告,这个时候我们查看这个警告,我们就发现这个警告

二·表的操作

1.表的创建[4](#1.表的创建4)

CREATE

create table 创建表的名字(表格包含的内容);

create table if not exists 创建表的名字(表格包含的内容) 引擎 字符集 排序规则;

这里的引擎,字符集,排序规则可以选择不写

mysql 复制代码
-- 创建一个学生的表,包含学生的id,姓名,年龄,生日日期
create table student (
    id bigint,
    name varchar(20) comment '学生的姓名',
    age int,
    birthday date
);
-- 这里关于学生姓名我加了comment,其实相当于备注,可以不写

2.表的修改

ALTER

//增加一列

alter table 表的名字 add 要添加的列名 要添加的列的数据类型 after 在哪个列之后的列名;

//修改此列的长度

alter table 表的名字 modify 列名 修改后的长度;

//重命名列名

alter table 表名 rename column to;

//删除列

alter table 表名 drop 删除的列名;

//重命名表名

alter table 表名 rename to 新的表名;

mysql 复制代码
alter table student add phone varchar(20) after borthday;
mysql 复制代码
alter table student modify phone varchar(15);
mysql 复制代码
alter table student rename column phone to phonenumber;
mysql 复制代码
alter table student drop birthday;
mysql 复制代码
 alter table student rename to students;

3.表的删除

DROP

drop table 表名;

mysql 复制代码
drop table students;

三·表中关于数据的操作

1.数据插入

INSERT

insert into 表名 (列1, 列2, 列3, ...)

values (值1, 值2, 值3, ...);

mysql 复制代码
insert into student (id,name, age) values (1,'张三', 20);

2.数据查询

SELECT

select 列1, 列2, ...from 表名 where 条件;

select* from 表名; -- 查询全部表的内容

mysql 复制代码
select*from student;
select name, age from student;

3.数据修改

UPDATA

update 表名 set 列1 = 值1, 列2 = 值2, ... where 条件;

mysql 复制代码
update student set age = 21 where id = 1;

4. 数据删除

DELETE

delete from 表名 where 条件;

mysql 复制代码
delete from student where id = 1;

今天内容就到这里啦,对表中数据的操作还有很多,之后咱们再说,加油!


  1. 展示数据库的语法为 show databases ↩︎

  2. 开始之前大家记得要先登录数据库,也就是先在你的桌面按键windows+R,输入cmd,回车就进入了命令行,然后输入 mysql -uroot -p 不要加分号,然后回车输入登录密码,登陆成功后自己创建一个库,然后写 use 库的名字,就能到库里创建表了,之后再继续文章内容 ↩︎

  3. -- 为mysql的注释语句,即两个横杠加一个空格 ↩︎

  4. 展示表的语法为 show tables,观看表结构的语法为 desc 表名 ↩︎

相关推荐
李兆龙的博客6 小时前
问津集 #26:Lakebase——Postgres 的版本化页面存储、数据库分支与计算弹性
数据库
倔强的石头_8 小时前
聊聊金仓KFS:一款把数据同步软件做扎实的产品
数据库
闲云野鹤在人间8 小时前
MySQL|从理论、安装、备份到主从复制、MHA高可用详解
linux·运维·数据库·mysql·云计算
禾小西8 小时前
Redis:从两大维度和三大主线建立知识体系
数据库·redis·缓存
李日华大战鸡红9 小时前
FOC状态空间方程模型推导(学习记录)
python·学习·线性代数
禾小西9 小时前
Redis 数据结构:快速的 Redis 有哪些慢操作?
数据结构·数据库·redis
数据库小学妹9 小时前
数据共享交换平台选型:交换方式对比与避坑指南
数据库·信创·数据同步·数据交换平台·政务数据共享·数据共享交换平台·数据库底座
要开心吖ZSH10 小时前
MySQL 慢 SQL 排查操作手册-个人笔记版
java·笔记·sql·mysql·慢查询
kkkkkkkkkk_Z10 小时前
新手自学嵌入式 | 学习日记:异常与中断基础、i.MX6ULL裸机开发环境搭建、GPIO模块与点灯原理
学习
loong_XL11 小时前
决策模型做内容安全检测:从踩坑到上线
数据库·安全·jev·决策模型