MySQL从入门到精通(第一篇):数据库基础与SQL入门实战

目录

引言:为什么选择MySQL?

一、数据库基础概念

1.1 什么是数据库?

1.2 MySQL的核心特点

二、MySQL基础操作

2.1 安装与启动

2.2 基础命令

三、数据表操作

3.1 创建表

3.2 插入数据

3.3 查询数据

四、实战练习题

题目1:创建数据库与表

题目2:插入与查询

题目3:修改与删除

五、常见错误与解析

六、下篇预告


引言:为什么选择MySQL?

MySQL 是全球最受欢迎的关系型数据库之一,因其高性能、开源性和易用性,被广泛应用于企业级开发(如电商、社交平台等)。本系列将通过 7篇实战教程,带你从零掌握MySQL核心技能,涵盖所有SQL语句,并通过 真题演练 强化理解。今天,我们从最基础的数据库操作开始!

一、数据库基础概念

1.1 什么是数据库?

  • 数据库(DB):存储和管理数据的仓库,通过结构化方式组织数据(如表、字段)。
  • 数据库管理系统(DBMS):管理数据库的软件,如MySQL、Oracle、SQL Server等。

1.2 MySQL的核心特点

  • 开源免费:社区版完全免费,适合中小型项目。
  • 高性能:支持高并发读写,适用于高流量场景。
  • 支持多种存储引擎:如InnoDB(事务支持)、MyISAM(读取优化)等。

二、MySQL基础操作

2.1 安装与启动

  • 安装:可通过官方包管理器(如Ubuntu的apt)或Docker快速部署。
  • 启动服务
    sudo systemctl start mysql  # 启动 
    sudo systemctl status mysql # 查看状态 

2.2 基础命令

  1. 连接数据库

    mysql -u root -p  # 输入密码登录 
  2. 查看所有数据库

    SHOW DATABASES;
  3. 创建数据库

    CREATE DATABASE IF NOT EXISTS mydb;  # 如果不存在则创建 
  4. 选择数据库

    USE mydb;

三、数据表操作

3.1 创建表

CREATE TABLE students (
    id INT PRIMARY KEY AUTO_INCREMENT,
    name VARCHAR(50) NOT NULL,
    age TINYINT,
    email VARCHAR(100) UNIQUE 
);
  • 关键字段说明
    • PRIMARY KEY:主键,唯一标识记录。
    • AUTO_INCREMENT:自动递增。
    • UNIQUE:唯一约束,防止重复值。

3.2 插入数据

INSERT INTO students (name, age, email)
VALUES ('张三', 20, 'zhangsan@example.com'); 

3.3 查询数据

SELECT * FROM students WHERE age > 18;

四、实战练习题

题目1:创建数据库与表

  1. 创建名为 school 的数据库。
  2. 在 school 数据库中创建 courses 表,包含以下字段:
    • id(主键,自增)
    • name(课程名称,非空)
    • teacher(教师姓名,允许为空)
    • credit(学分,整数)

答案

CREATE DATABASE IF NOT EXISTS school;
USE school;
 
CREATE TABLE courses (
    id INT PRIMARY KEY AUTO_INCREMENT,
    name VARCHAR(50) NOT NULL,
    teacher VARCHAR(50),
    credit INT 
);

题目2:插入与查询

  1. 向 courses 表插入以下数据:
    • 课程名称:Java编程,教师:李四,学分:4
    • 课程名称:数据库原理,教师:王五,学分:3
  2. 查询学分大于3的课程。

答案

INSERT INTO courses (name, teacher, credit)
VALUES ('Java编程', '李四', 4),
       ('数据库原理', '王五', 3);
 
SELECT * FROM courses WHERE credit > 3;

题目3:修改与删除

  1. 将 courses 表中 Java编程 的学分改为5。
  2. 删除 courses 表中 teacher 为空的记录。

答案

UPDATE courses SET credit = 5 WHERE name = 'Java编程';
 
DELETE FROM courses WHERE teacher IS NULL;

五、常见错误与解析

  1. 错误:ERROR 1064 (42000)
    • 原因:SQL语法错误,如缺少逗号或引号。
    • 解决:检查关键字大小写(MySQL不区分,但建议统一)、标点符号。
  2. 错误:Duplicate entry
    • 原因:插入重复的唯一键(如email)。
    • 解决:使用INSERT IGNORE或修改唯一约束条件。

六、下篇预告

下一期我们将深入讲解 数据查询进阶,包括:

  • GROUP BY 分组统计
  • JOIN 多表关联查询
  • HAVING 分组过滤
  • 实战题目:计算各部门平均工资、统计订单数量等。

关注我,获取完整系列教程!
如果本文对你有帮助,欢迎点赞、收藏、转发,让我们一起成为MySQL高手!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Leaton Lee

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值