MySQL学习笔记

文章目录

1、登录

sql 复制代码
mysql -u <用户名> <密码>(在大多数系统中,SQL 语句都是不区分大小写的)

2、查看数据库

sql 复制代码
show databases;

3、连接数据库

sql 复制代码
use <数据库名>;

4、查看表

sql 复制代码
show tables;

5、退出

sql 复制代码
quit或者exit

6、创建/删除数据库

sql 复制代码
CREATE DATABASE <数据库名字>; 创建
DROP DATABASE <数据库名字>; 删除

7、创建表

sql 复制代码
CREATE TABLE 表的名字
(
列名a 数据类型(数据长度),
列名b 数据类型(数据长度),
列名c 数据类型(数据长度)
);

8、数据类型

9、查看表中的内容

sql 复制代码
SELECT 要查询的列名 FROM 表名字 WHERE 限制条件; 

把要查询的列名 用一个星号 * 号表示代表要查询表中所有的列

SELECT 语句常常会有 WHERE 限制条件,用于达到更加精确的查询。
WHERE 限制条件可以有数学符号 (=,<,>,>=,<=)
也可以用 [条件一 OR 条件二] 和 [条件一 AND 条件二] 连接
关键词 IN 和 NOT IN 的作用用于筛选"在"或"不在"某个范围内的结果

关键字 LIKE 可用于实现模糊查询,常见于搜索功能中。
和 LIKE 联用的通常还有通配符,代表未知字符。
SQL 中的通配符是 _ 和 % 。其中 _ 代表一个未指定字符,% 代表不定个未指定字符

默认情况下,ORDER BY 的结果是升序排列,而使用关键词 ASC 和 DESC 可指定升序或降序排序。

SQL 有 5 个内置函数
COUNT 计数
SUM 求和
AVG 求平均值
MAX 最大值
MIN最小值

子查询

连接查询

10、向表中插入数据

sql 复制代码
INSERT INTO 表的名字(列名a,列名b,列名c) VALUES(值1,值2,值3);

11、约束

主键:主键(PRIMARY KEY)作为数据表中一行数据的唯一标识符,在一张表中通过主键就能准确定位到某一行数据,它不能有重复记录且不能为空。

默认值:默认值常用于一些可有可无的字段,如果用户没有设置,系统给他应该设定一个默认的文本

唯一:唯一约束 (UNIQUE) 它规定一张表中指定的一列的值必须不能有重复值,即这一列每个值都是唯一的。

外键:

非空:非空约束 (NOT NULL),被非空约束的列,在插入值时必须非空。

12、重命名一张表

sql 复制代码
RENAME TABLE 原名 TO 新名字;

ALTER TABLE 原名 RENAME 新名;

ALTER TABLE 原名 RENAME TO 新名;

13、删除一张表

sql 复制代码
DROP TABLE 表名字;

14、增加一列

sql 复制代码
ALTER TABLE 表名字 ADD COLUMN 列名字 数据类型 约束;
或:
ALTER TABLE 表名字 ADD 列名字 数据类型 约束;

新增加的列,被默认放置在这张表的最右边。如果要把增加的列插入在指定位置,
则需要在语句的最后使用 AFTER 关键词("AFTER 列 1" 表示新增的列被放置在 "列 1" 的后面)。
ALTER TABLE employee ADD weight INT(4) DEFAULT 120 AFTER age;

如果想放在第一列的位置,则使用 FIRST 关键词
ALTER TABLE employee ADD test INT(10) DEFAULT 11 FIRST;

15、删除一列

sql 复制代码
ALTER TABLE 表名字 DROP COLUMN 列名字;

或: ALTER TABLE 表名字 DROP 列名字;

16、重命名一列

sql 复制代码
ALTER TABLE 表名字 CHANGE 原列名 新列名 数据类型 约束;

17、改变数据类型

sql 复制代码
ALTER TABLE 表名字 MODIFY 列名字 新数据类型;

18、修改表中某个值

sql 复制代码
UPDATE 表名字 SET 列1=值1,列2=值2 WHERE 条件;

19、删除一行记录

sql 复制代码
DELETE FROM 表名字 WHERE 条件;

20、导入

sql 复制代码
LOAD DATA INFILE '文件路径和文件名' INTO TABLE 表名字;

21、导出

sql 复制代码
LOAD DATA INFILE '文件路径和文件名' INTO TABLE 表名字;

22、备份

sql 复制代码
mysqldump -u root 数据库名>备份文件名;   #备份整个数据库

mysqldump -u root 数据库名 表名字>备份文件名;  #备份整个表

23、恢复

sql 复制代码
source sql文件路径

mysql -u root 数据库名 < bak.sql
相关推荐
ZZZS0516几秒前
stack栈练习
c++·笔记·学习·算法·动态规划
叁沐10 分钟前
MySQL 09 普通索引和唯一索引,应该怎么选择?
mysql
位东风24 分钟前
【c++学习记录】状态模式,实现一个登陆功能
c++·学习·状态模式
Star Curry33 分钟前
【新手小白的嵌入式学习之路】-STM32的学习_GPIO 8种模式学习心得
stm32·嵌入式硬件·学习
草履虫建模2 小时前
Redis:高性能内存数据库与缓存利器
java·数据库·spring boot·redis·分布式·mysql·缓存
AI视觉网奇2 小时前
rag学习笔记
笔记·学习
苹果醋32 小时前
Vue3组合式API应用:状态共享与逻辑复用最佳实践
java·运维·spring boot·mysql·nginx
一个处女座的测试2 小时前
Python语言+pytest框架+allure报告+log日志+yaml文件+mysql断言实现接口自动化框架
python·mysql·pytest
KIDAKN3 小时前
MySQL 存储结构
数据库·mysql
Feliz Da Vida3 小时前
[代码学习] c++ 通过H矩阵快速生成图像对应的mask
c++·学习