MySQL数据库基本命令的8个模块

MySQL 的基础命令可以按照功能和使用场景划分为 8 个核心模块,每个模块聚焦特定操作场景,便于系统学习和记忆。以下是各模块的划分及核心命令说明:

一、连接与退出数据库(基础交互)

用于建立、切换或断开与 MySQL 服务器的连接,是所有操作的前提。

命令功能示例
mysql -u 用户名 -p本地连接数据库(需输入密码)mysql -u root -p
mysql -h 主机名 -u 用户名 -p 端口号远程连接数据库mysql -h 192.168.1.1 -u root -p 3306
use 数据库名;切换到指定数据库use test_db;
exit; / quit;退出 MySQL 客户端-
status;查看当前连接状态(版本、数据库等)-

二、数据库管理(库级操作)

对数据库本身进行创建、删除、查看等操作(数据库是表的容器)。

命令功能示例
CREATE DATABASE 数据库名;创建数据库CREATE DATABASE school;
CREATE DATABASE IF NOT EXISTS 数据库名;避免重复创建(不存在时才创建)CREATE DATABASE IF NOT EXISTS school;
DROP DATABASE 数据库名;删除数据库(谨慎使用)DROP DATABASE school;
SHOW DATABASES;查看所有数据库-
SELECT DATABASE();查看当前使用的数据库-

三、表结构操作(DDL:数据定义语言)

对表的结构进行创建、修改、删除等(表是数据的载体,结构定义字段和约束)。

命令功能示例
CREATE TABLE 表名(字段1 类型 约束, ...);创建表CREATE TABLE student(id INT PRIMARY KEY, name VARCHAR(20));
ALTER TABLE 表名 ADD 字段 类型;新增字段ALTER TABLE student ADD age INT;
ALTER TABLE 表名 MODIFY 字段 新类型;修改字段类型ALTER TABLE student MODIFY name VARCHAR(30);
ALTER TABLE 表名 DROP 字段;删除字段ALTER TABLE student DROP age;
ALTER TABLE 表名 RENAME TO 新表名;重命名表ALTER TABLE student RENAME TO stu;
DROP TABLE 表名;删除表DROP TABLE stu;
SHOW TABLES;查看当前数据库的所有表-
DESC 表名; / DESCRIBE 表名;查看表结构(字段、类型、约束等)DESC student;

四、数据操纵(DML:数据操纵语言)

对表中的数据进行增、删、改(操作后需提交事务,MySQL 默认自动提交)。

命令功能示例
INSERT INTO 表名(字段1,...) VALUES(值1,...);插入单行数据INSERT INTO student(id,name) VALUES(1,'张三');
INSERT INTO 表名 VALUES(值1,值2,...);按表字段顺序插入(需包含所有字段)INSERT INTO student VALUES(2,'李四',18);
INSERT INTO 表名(字段1,...) VALUES(...),(...);批量插入多行INSERT INTO student(id,name) VALUES(3,'王五'),(4,'赵六');
UPDATE 表名 SET 字段1=值1,... WHERE 条件;修改数据(无 WHERE 则改全表)UPDATE student SET age=20 WHERE id=1;
DELETE FROM 表名 WHERE 条件;删除数据(无 WHERE 则删全表)DELETE FROM student WHERE id=1;
TRUNCATE TABLE 表名;清空表数据(保留结构,速度快)TRUNCATE TABLE student;

五、数据查询(DQL:数据查询语言)

通过 SELECT 语句提取表中的数据,是 MySQL 最核心的操作之一。

命令功能示例
SELECT 字段1,... FROM 表名;查询指定字段SELECT id,name FROM student;
SELECT * FROM 表名;查询所有字段(不推荐生产环境)SELECT * FROM student;
SELECT 字段 FROM 表名 WHERE 条件;带条件查询SELECT * FROM student WHERE age > 18;
SELECT 字段 FROM 表名 ORDER BY 字段 [ASC/DESC];排序查询(ASC 升序,DESC 降序)SELECT * FROM student ORDER BY age DESC;
SELECT 字段 FROM 表名 LIMIT 起始索引, 条数;分页查询(起始索引从 0 开始)SELECT * FROM student LIMIT 0,10;(查前 10 条)
SELECT 聚合函数(字段) FROM 表名 GROUP BY 字段;分组聚合(如计数、求和)SELECT class_id, COUNT(*) 人数 FROM student GROUP BY class_id;
SELECT ... JOIN ... ON 关联条件;多表关联查询SELECT s.name, c.course FROM student s JOIN score c ON s.id = c.stu_id;

六、用户与权限管理(安全控制)

管理 MySQL 用户的创建、删除及权限分配(控制谁能操作数据库 / 表)。

命令功能示例
CREATE USER '用户名'@'主机' IDENTIFIED BY '密码';创建用户(主机为 % 表示允许所有 IP 连接)CREATE USER 'test'@'%' IDENTIFIED BY '123456';
ALTER USER '用户名'@'主机' IDENTIFIED BY '新密码';修改用户密码ALTER USER 'test'@'%' IDENTIFIED BY '654321';
DROP USER '用户名'@'主机';删除用户DROP USER 'test'@'%';
GRANT 权限 ON 数据库.表 TO '用户名'@'主机';授予权限(*.* 表示所有库所有表)GRANT SELECT,INSERT ON school.* TO 'test'@'%';
REVOKE 权限 ON 数据库.表 FROM '用户名'@'主机';回收权限REVOKE INSERT ON school.* FROM 'test'@'%';
FLUSH PRIVILEGES;刷新权限(使权限修改生效)-
SELECT user, host FROM mysql.user;查看所有用户-

七、事务控制(数据一致性)

控制 DML 操作的提交、回滚,保障多步操作的原子性(默认自动提交,可手动关闭)。

命令功能示例
START TRANSACTION; / BEGIN;开启事务(关闭自动提交)-
COMMIT;提交事务(所有操作永久生效)-
ROLLBACK;回滚事务(撤销未提交的操作)-
SAVEPOINT 保存点;设置保存点(可回滚到指定点)SAVEPOINT sp1; ROLLBACK TO sp1;
SET AUTOCOMMIT=0;关闭自动提交(需手动 COMMIT-
SET AUTOCOMMIT=1;开启自动提交(默认)-

八、索引与约束(性能与完整性)

  • 索引:加速查询(类似书籍目录);
  • 约束:保证数据完整性(如主键唯一、字段非空)。
命令功能示例
CREATE INDEX 索引名 ON 表名(字段);创建普通索引CREATE INDEX idx_stu_name ON student(name);
ALTER TABLE 表名 ADD PRIMARY KEY(字段);添加主键约束(唯一且非空)ALTER TABLE student ADD PRIMARY KEY(id);
ALTER TABLE 表名 ADD UNIQUE(字段);添加唯一约束(字段值不重复)ALTER TABLE student ADD UNIQUE(phone);
ALTER TABLE 表名 ADD FOREIGN KEY(字段) REFERENCES 主表(字段);添加外键约束(关联其他表)ALTER TABLE score ADD FOREIGN KEY(stu_id) REFERENCES student(id);
ALTER TABLE 表名 MODIFY 字段 类型 NOT NULL;添加非空约束(字段不能为 NULL)ALTER TABLE student MODIFY name VARCHAR(20) NOT NULL;
DROP INDEX 索引名 ON 表名;删除索引DROP INDEX idx_stu_name ON student;

总结

这 8 个模块基本覆盖了 MySQL 的日常操作,其中 数据查询(DQL) 和 表结构操作(DDL) 是使用频率最高的模块,而 用户权限 和 事务控制 则是保障数据库安全和数据一致性的核心。实际使用中,需根据场景灵活组合不同模块的命令。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值