MySQL基础操作入门(建表+查询,新手零基础可学)

7 阅读6分钟

对于程序员来说,MySQL是最常用的关系型数据库,无论是网站开发、后台管理系统,还是日常数据存储,都离不开MySQL的使用。很多新手觉得数据库很难,其实入门MySQL只需掌握“建库、建表、增删改查”这几个核心操作,就能应对基础的使用场景。

今天分享MySQL基础操作全流程,从建库建表到基础查询,每一步都有详细的SQL语句示例,标注清楚含义,新手零基础也能轻松跟着操作,复制语句就能运行,快速入门MySQL~

一、前提准备(新手必看)

  1. 安装MySQL:官网下载对应系统的MySQL(www.mysql.com/),安装过程默认下一步…

  2. 登录MySQL:打开终端/Git Bash,输入登录命令,输入密码后登录(密码输入时不显示,直接输入即可):


mysql -u root -p

  1. 注意事项:SQL语句不区分大小写(比如CREATE和create都可以),但建议关键字大写(如CREATE、SELECT),便于区分和阅读;每条SQL语句结尾必须加英文分号(;),否则不会执行。

二、核心基础操作(全流程)

1. 创建数据库(CREATE DATABASE)

数据库是存储表的容器,先创建数据库,才能创建表、存储数据。

语法:CREATE DATABASE 数据库名;

示例(创建一个名为student_db的数据库):


-- 注释:创建数据库student_db(-- 后面是注释,不执行)

CREATE DATABASE student_db;

💡 补充操作:

  • 查看所有数据库:SHOW DATABASES;

  • 切换数据库(使用某个数据库):USE 数据库名; (比如USE student_db; 切换到student_db数据库,后续操作都在这个数据库中进行)

  • 删除数据库(谨慎使用!):DROP DATABASE 数据库名;

2. 创建数据表(CREATE TABLE)

表是数据库的核心,用于存储具体的数据,每个表包含多个字段(列),比如学生表包含学号、姓名、年龄等字段。

语法:CREATE TABLE 表名 (字段1 类型 约束, 字段2 类型 约束, ...);

新手常用字段类型(必记):

  • INT:整数类型(比如年龄、学号);

  • VARCHAR(长度):字符串类型(比如姓名、性别,长度表示最多能存储的字符数);

  • DATE:日期类型(比如出生日期,格式为YYYY-MM-DD);

  • DECIMAL(总长度, 小数位数):小数类型(比如成绩,如DECIMAL(5,2)表示最大5位数字,2位小数)。

新手常用约束(必记):

  • PRIMARY KEY:主键(唯一标识表中的每一行数据,不能重复、不能为NULL,比如学号);

  • NOT NULL:非空约束(该字段不能为NULL,比如姓名不能为空);

  • UNIQUE:唯一约束(该字段的值不能重复,比如身份证号)。

示例(在student_db数据库中,创建一个名为student的学生表):


-- 先切换到student_db数据库

USE student_db;

-- 创建student表,包含学号、姓名、年龄、性别、出生日期、成绩字段

CREATE TABLE student (

student_id INT PRIMARY KEY,  -- 学号,主键(唯一、非空)

student_name VARCHAR(20) NOT NULL,  -- 姓名,非空

age INT,  -- 年龄,可空

gender VARCHAR(10),  -- 性别,可空(比如男、女、未知)

birth_date DATE,  -- 出生日期

score DECIMAL(5,2)  -- 成绩,最多5位数字,2位小数

);

💡 补充操作:

  • 查看当前数据库中的所有表:SHOW TABLES;

  • 查看表结构(字段、类型、约束):DESC 表名; (比如DESC student;)

  • 删除表(谨慎使用!):DROP TABLE 表名;

3. 插入数据(INSERT INTO)

表创建完成后,向表中插入具体的数据(一行或多行)。

语法1(插入一行数据):INSERT INTO 表名 (字段1, 字段2, ...) VALUES (值1, 值2, ...);

语法2(插入多行数据):INSERT INTO 表名 (字段1, 字段2, ...) VALUES (值1, 值2, ...), (值1, 值2, ...);

示例(向student表中插入数据):


-- 插入一行数据(学号1001,姓名张三,年龄20,性别男,出生日期2004-01-01,成绩95.5)

INSERT INTO student (student_id, student_name, age, gender, birth_date, score) VALUES (1001, '张三', 20, '男', '2004-01-01', 95.5);

-- 插入多行数据(批量插入,更高效)

INSERT INTO student (student_id, student_name, age, gender, birth_date, score) VALUES

(1002, '李四', 19, '女', '2005-02-10', 88.0),

(1003, '王五', 21, '男', '2003-05-15', 92.3),

(1004, '赵六', 19, '女', '2005-08-20', 79.5);

💡 注意:

  • 插入的值必须和字段的类型、顺序一致(比如student_id是INT类型,不能插入字符串);

  • 字符串、日期类型的值,必须用英文单引号包裹;

  • 主键字段的值不能重复,否则会报错。

4. 基础查询数据(SELECT)

查询是MySQL最常用的操作,用于从表中获取需要的数据,新手重点掌握以下3种基础查询。

(1)查询表中所有数据(* 表示所有字段)

语法:SELECT * FROM 表名;

示例(查询student表中所有学生的数据):


SELECT * FROM student;

(2)查询指定字段的数据(只查需要的字段,更高效)

语法:SELECT 字段1, 字段2, ... FROM 表名;

示例(查询学生的学号、姓名、成绩):


SELECT student_id, student_name, score FROM student;

(3)带条件查询(WHERE子句,筛选符合条件的数据)

语法:SELECT 字段1, 字段2, ... FROM 表名 WHERE 条件;

新手常用条件运算符:

  • = :等于(比如age = 20,查询年龄为20的学生);

  • :大于(比如score > 90,查询成绩大于90的学生);

  • < :小于;

  • != :不等于;

  • AND :并且(比如age > 19 AND score > 80,查询年龄大于19且成绩大于80的学生);

  • OR :或者。

示例(带条件查询):


-- 查询年龄为20的学生(所有字段)

SELECT * FROM student WHERE age = 20;

-- 查询成绩大于90且性别为男的学生(只查学号、姓名、成绩)

SELECT student_id, student_name, score FROM student WHERE score > 90 AND gender = '男';

-- 查询年龄不等于20的学生

SELECT * FROM student WHERE age != 20;

三、新手避坑提醒

  1. SQL语句结尾必须加英文分号,否则不会执行;

  2. 字符串、日期类型的值,必须用英文单引号包裹,不能用中文引号;

  3. 主键字段的值不能重复、不能为NULL,否则插入数据会报错;

  4. 删除数据库、删除表的操作要谨慎,执行后数据无法恢复;

  5. 切换数据库后,才能对该数据库中的表进行操作,否则会提示“表不存在”。

MySQL的基础操作核心就是“建库、建表、增删改查”,今天分享的内容覆盖了新手最常用的操作,多复制语句运行几次,熟悉语法和逻辑,就能快速入门。后续可以学习更复杂的查询(排序、分组、联表)、更新和删除数据等操作。