【mysql语句和命令大全】在数据库管理与开发过程中,MySQL 是最为常见和广泛使用的开源关系型数据库系统之一。无论是初学者还是资深开发者,掌握常用的 MySQL 语句和命令都是必不可少的技能。本文将全面整理并讲解 MySQL 中常用的数据操作、数据定义、数据库管理以及系统维护相关语句和命令,帮助你更高效地使用 MySQL。
一、数据库基本操作
1. 创建数据库
```sql
CREATE DATABASE 数据库名;
```
例如:
```sql
CREATE DATABASE mydb;
```
2. 删除数据库
```sql
DROP DATABASE 数据库名;
```
例如:
```sql
DROP DATABASE mydb;
```
3. 使用数据库
```sql
USE 数据库名;
```
例如:
```sql
USE mydb;
```
4. 查看所有数据库
```sql
SHOW DATABASES;
```
二、表结构操作
1. 创建表
```sql
CREATE TABLE 表名 (
列名1 数据类型,
列名2 数据类型,
...
);
```
例如:
```sql
CREATE TABLE users (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(50),
email VARCHAR(100)
);
```
2. 删除表
```sql
DROP TABLE 表名;
```
3. 修改表结构(添加列)
```sql
ALTER TABLE 表名 ADD 列名 数据类型;
```
4. 修改表结构(修改列)
```sql
ALTER TABLE 表名 MODIFY 列名 新数据类型;
```
5. 修改表结构(重命名列)
```sql
ALTER TABLE 表名 CHANGE 旧列名 新列名 数据类型;
```
6. 查看表结构
```sql
DESCRIBE 表名;
```
三、数据操作语句
1. 插入数据
```sql
INSERT INTO 表名 (列1, 列2, ...) VALUES (值1, 值2, ...);
```
例如:
```sql
INSERT INTO users (name, email) VALUES ('张三', 'zhangsan@example.com');
```
2. 查询数据
```sql
SELECT 列名1, 列名2 FROM 表名 WHERE 条件;
```
例如:
```sql
SELECT FROM users WHERE age > 20;
```
3. 更新数据
```sql
UPDATE 表名 SET 列名=值 WHERE 条件;
```
例如:
```sql
UPDATE users SET email = 'zhangsan_new@example.com' WHERE id = 1;
```
4. 删除数据
```sql
DELETE FROM 表名 WHERE 条件;
```
例如:
```sql
DELETE FROM users WHERE id = 1;
```
四、查询语句进阶
1. 条件查询
```sql
SELECT FROM 表名 WHERE 条件1 AND 条件2;
```
2. 排序查询
```sql
SELECT FROM 表名 ORDER BY 列名 ASC/DESC;
```
3. 分页查询
```sql
SELECT FROM 表名 LIMIT 起始位置, 数量;
```
4. 聚合函数
- `COUNT()`:统计数量
- `SUM()`:求和
- `AVG()`:平均值
- `MAX()`:最大值
- `MIN()`:最小值
例如:
```sql
SELECT AVG(score) FROM students;
```
5. 连接查询(JOIN)
```sql
SELECT a.列1, b.列2
FROM 表1 a
JOIN 表2 b ON a.关联列 = b.关联列;
```
五、索引与约束
1. 创建索引
```sql
CREATE INDEX 索引名 ON 表名 (列名);
```
2. 删除索引
```sql
DROP INDEX 索引名 ON 表名;
```
3. 主键约束
```sql
PRIMARY KEY (列名)
```
4. 外键约束
```sql
FOREIGN KEY (列名) REFERENCES 其他表(列名)
```
六、用户权限管理
1. 创建用户
```sql
CREATE USER '用户名'@'主机名' IDENTIFIED BY '密码';
```
2. 授权
```sql
GRANT 权限类型 ON 数据库.表 TO '用户名'@'主机名';
```
例如:
```sql
GRANT SELECT, INSERT ON mydb. TO 'user'@'localhost';
```
3. 撤销权限
```sql
REVOKE 权限类型 ON 数据库.表 FROM '用户名'@'主机名';
```
4. 修改用户密码
```sql
SET PASSWORD FOR '用户名'@'主机名' = PASSWORD('新密码');
```
七、备份与恢复
1. 导出整个数据库
```bash
mysqldump -u 用户名 -p 数据库名 > 文件名.sql
```
2. 导入数据库
```bash
mysql -u 用户名 -p 数据库名 < 文件名.sql
```
八、系统信息查看
1. 查看当前登录用户
```sql
SELECT USER();
```
2. 查看版本信息
```sql
SELECT VERSION();
```
3. 查看表空间使用情况
```sql
SHOW TABLE STATUS FROM 数据库名;
```
九、其他常用命令
| 命令 | 说明 |
| `SHOW TABLES;` | 查看当前数据库中的所有表 |
| `SHOW CREATE TABLE 表名;` | 查看表的创建语句 |
| `SHOW PROCESSLIST;` | 查看当前运行的进程 |
| `FLUSH PRIVILEGES;` | 刷新权限设置 |
| `QUIT;` 或 `EXIT;` | 退出 MySQL 命令行 |
总结
MySQL 是一个功能强大的数据库管理系统,掌握其常用语句和命令是进行数据库开发与维护的基础。通过本文的整理,希望你能够对 MySQL 的基本操作有一个全面的理解,并能够在实际项目中灵活运用。无论你是刚开始学习数据库,还是已经有一定经验的开发者,这些内容都将为你提供极大的帮助。


