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 表名 ↩︎

相关推荐
清水白石0081 分钟前
Python 在数据栈中的边界:何时高效原型、何时切换到 SQL、Spark、Rust 或数据库原生能力
数据库·python·自动化
dishugj1 分钟前
sqlplus / as sysdba登录数据库报错ora-01017解决办法
数据库·oracle
渡我白衣1 分钟前
运筹帷幄——在线学习与实时预测系统
人工智能·深度学习·神经网络·学习·算法·机器学习·caffe
ZhiqianXia2 分钟前
PyTorch学习笔记(16):scheduler.py
pytorch·笔记·学习
小陈工4 小时前
Python Web开发入门(十七):Vue.js与Python后端集成——让前后端真正“握手言和“
开发语言·前端·javascript·数据库·vue.js·人工智能·python
0xDevNull8 小时前
MySQL数据冷热分离详解
后端·mysql
AI成长日志8 小时前
【Agentic RL】1.1 什么是Agentic RL:从传统RL到智能体学习
人工智能·学习·算法
科技小花8 小时前
数据治理平台架构演进观察:AI原生设计如何重构企业数据管理范式
数据库·重构·架构·数据治理·ai-native·ai原生
一江寒逸8 小时前
零基础从入门到精通MySQL(中篇):进阶篇——吃透多表查询、事务核心与高级特性,搞定复杂业务SQL
数据库·sql·mysql
D4c-lovetrain9 小时前
linux个人心得22 (mysql)
数据库·mysql