MySQL是目前最流行的关系型数据库管理系统之一,掌握数据库的使用方法是开发者的基础技能。下面将从连接服务开始,逐步介绍MySQL中数据库的完整使用流程。

连接MySQL服务
在使用数据库之前,首先需要连接到MySQL服务,常用的连接方式是通过命令行客户端。打开终端后输入以下命令,按照提示输入密码即可完成连接:
mysql -u root -p
其中root是默认的管理员用户名,执行命令后会提示输入对应的密码,验证通过后就可以进入MySQL的交互界面。
查看已有数据库
连接成功后,可以先查看当前MySQL服务中已有的所有数据库,避免重复创建或者误操作。执行以下SQL语句即可查看:
SHOW DATABASES;
执行后会返回一个列表,包含系统自带的数据库如information_schema、mysql等,以及用户之前创建的自定义数据库。
创建新数据库
如果需要新建一个数据库,可以使用CREATE DATABASE语句,同时可以指定字符集和排序规则,避免后续出现中文乱码问题:
CREATE DATABASE IF NOT EXISTS test_db DEFAULT CHARACTER SET utf8mb4 DEFAULT COLLATE utf8mb4_general_ci;
语句中的IF NOT EXISTS表示如果数据库不存在才创建,避免重复创建时报错。utf8mb4是支持emoji和更多特殊字符的字符集,推荐作为默认字符集使用。
选择目标数据库
创建完成后,需要先选择要操作的数据库,后续的表创建和数据操作都会在这个选中的数据库下执行:
USE test_db;
执行后终端会提示Database changed,表示已经切换到test_db数据库。
在数据库中创建表
数据库本身只是存储数据的容器,实际的数据需要存储在表中。下面创建一个用户表,包含用户ID、用户名、年龄三个字段:
CREATE TABLE IF NOT EXISTS user (
id INT PRIMARY KEY AUTO_INCREMENT COMMENT '用户ID',
username VARCHAR(50) NOT NULL COMMENT '用户名',
age INT DEFAULT 0 COMMENT '年龄'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='用户表';
INT表示整数类型,VARCHAR(50)表示最长50位的可变字符串,AUTO_INCREMENT表示自增,PRIMARY KEY表示主键,ENGINE=InnoDB表示使用InnoDB存储引擎,支持事务和外键。
基础数据操作
表创建完成后,就可以对表中的数据进行增删改查操作了,以下是常用的基础语句示例:
插入数据
INSERT INTO user (username, age) VALUES ('张三', 25);
INSERT INTO user (username, age) VALUES ('李四', 28), ('王五', 22);
查询数据
-- 查询所有用户 SELECT * FROM user; -- 查询年龄大于23的用户 SELECT * FROM user WHERE age > 23;
更新数据
-- 将张三的年龄更新为26 UPDATE user SET age = 26 WHERE username = '张三';
删除数据
-- 删除王五的数据 DELETE FROM user WHERE username = '王五';
删除数据库
如果不再需要某个数据库,可以使用DROP DATABASE语句删除,注意该操作会删除数据库下的所有表和所有数据,执行前需要确认:
DROP DATABASE IF EXISTS test_db;