MySQL 基本操作入门指南
MySQL 是目前最流行的关系型数据库管理系统之一,广泛应用于各类 Web 应用和数据存储场景。本文将介绍 MySQL 的常用基本操作,适合初学者快速入门。
一、连接 MySQL 服务器
首先需要连接到 MySQL 服务器,使用以下命令:
# 基本连接方式
mysql-u 用户名 -p# 示例:以 root 用户连接
mysql-u root -p
输入命令后会提示输入密码,正确输入后即可进入 MySQL 命令行界面。
二、数据库操作
1. 查看所有数据库
SHOW DATABASES;
2. 创建数据库
CREATE DATABASE 数据库名;-- 示例:创建名为 mydb 的数据库
CREATE DATABASE mydb;-- 创建数据库时指定字符集
CREATE DATABASE mydb CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
3. 选择数据库
USE 数据库名;-- 示例:选择 mydb 数据库
USE mydb;
4. 删除数据库
DROP DATABASE 数据库名;-- 示例:删除 mydb 数据库
DROP DATABASE mydb;
注意:删除数据库操作非常危险,会删除该数据库中的所有数据,请谨慎操作!
三、表操作
1. 查看当前数据库中的所有表
在进行表操作前,需要先使用 USE 命令选择一个数据库。
SHOW TABLES;
2. 创建表
CREATE TABLE 表名 (字段1 数据类型 [约束条件],字段2 数据类型 [约束条件],...[表级约束]
);-- 示例:创建用户表
CREATE TABLE users (id INT PRIMARY KEY AUTO_INCREMENT,username VARCHAR(50) NOT NULL UNIQUE,email VARCHAR(100) NOT NULL UNIQUE,age INT,created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
常用数据类型:
• INT:整数
• VARCHAR (n):可变长度字符串
• CHAR (n):固定长度字符串
• DATE:日期
• TIME:时间
• DATETIME:日期时间
• TEXT:长文本
常用约束:
• PRIMARY KEY:主键
• AUTO_INCREMENT:自增
• NOT NULL:非空
• UNIQUE:唯一
• DEFAULT:默认值
• FOREIGN KEY:外键
3. 查看表结构
DESCRIBE 表名;
-- 或
DESC 表名;-- 示例
DESC users;
4. 修改表
-- 添加字段
ALTER TABLE 表名 ADD 字段名 数据类型 [约束];-- 修改字段
ALTER TABLE 表名 MODIFY 字段名 新数据类型 [新约束];-- 重命名字段
ALTER TABLE 表名 CHANGE 旧字段名 新字段名 数据类型 [约束];-- 删除字段
ALTER TABLE 表名 DROP 字段名;-- 重命名表
ALTER TABLE 旧表名 RENAME TO 新表名;
5. 删除表
DROP TABLE 表名;-- 示例
DROP TABLE users;
四、数据操作(CRUD)
1. 插入数据(Create)
-- 插入完整记录
INSERT INTO 表名 VALUES (值1, 值2, ...);-- 插入指定字段
INSERT INTO 表名 (字段1, 字段2, ...) VALUES (值1, 值2, ...);-- 插入多条记录
INSERT INTO 表名 (字段1, 字段2, ...)
VALUES
(值1, 值2, ...),
(值1, 值2, ...),
...;-- 示例
INSERT INTO users (username, email, age)
VALUES
('zhangsan', 'zhangsan@example.com', 25),
('lisi', 'lisi@example.com', 30);
2. 查询数据(Read)
-- 查询所有字段所有记录
SELECT * FROM 表名;-- 查询指定字段
SELECT 字段1, 字段2 FROM 表名;-- 带条件查询
SELECT * FROM 表名 WHERE 条件;-- 排序
SELECT * FROM 表名 ORDER BY 字段 [ASC|DESC];-- 限制查询数量
SELECT * FROM 表名 LIMIT 数量;-- 示例
SELECT username, email FROM users WHERE age > 25 ORDER BY age DESC LIMIT 10;
常用查询条件运算符:
=:等于
<> 或!=:不等于
:大于
<:小于
=:大于等于
<=:小于等于
BETWEEN:在某个范围内
LIKE:模糊匹配
IN:在列举值内
AND:并且
OR:或者
3. 更新数据(Update)
UPDATE 表名 SET 字段1=值1, 字段2=值2 WHERE 条件;-- 示例
UPDATE users SET age=26 WHERE username='zhangsan';
注意:如果不带 WHERE 条件,会更新表中所有记录,请谨慎操作!
4. 删除数据(Delete)
DELETE FROM 表名 WHERE 条件;-- 示例
DELETE FROM users WHERE id=1;
五、索引操作
索引可以提高查询效率。
-- 创建索引
CREATE INDEX 索引名 ON 表名(字段名);-- 示例
CREATE INDEX idx_username ON users(username);-- 查看索引
SHOW INDEX FROM 表名;-- 删除索引
DROP INDEX 索引名 ON 表名;
六、用户与权限管理
-- 创建用户
CREATE USER '用户名'@'主机名' IDENTIFIED BY '密码';-- 授予权限
GRANT 权限列表 ON 数据库名.表名 TO '用户名'@'主机名';-- 示例:授予所有权限
GRANT ALL PRIVILEGES ON *.* TO 'admin'@'localhost';-- 撤销权限
REVOKE 权限列表 ON 数据库名.表名 FROM '用户名'@'主机名';-- 删除用户
DROP USER '用户名'@'主机名';-- 刷新权限
FLUSH PRIVILEGES;
七、退出 MySQL
exit;
-- 或
quit;
总结
以上就是 MySQL 的基本操作,涵盖了数据库、表、数据的创建、查询、更新和删除等常用操作。在实际使用中,还会涉及更复杂的查询(如连接查询、子查询等)和数据库管理操作。建议结合实际项目练习,逐步掌握 MySQL 的更多高级特性。
掌握这些基础操作后,可以进一步学习 MySQL 的事务处理、存储过程、触发器等高级功能,以应对更复杂的业务场景。