发布时间:2026/8/25 15:27:03
零基础学 MySQL(上):从建库建表到增删改查,一篇搭好 SQL 基础 点击进入作者专栏《Java 技术精讲并发与核心组件》 ✅文章目录一、先弄清 4 个基本概念MySQL 和 SQL 有什么区别二、创建第一个数据库三、设计并创建学生表四、掌握最核心的 CRUD1. 新增数据INSERT2. 查询数据SELECT3. 修改数据UPDATE4. 删除数据DELETE五、初学者最容易踩的 5 个坑1. 忘记选择数据库2. 字符串没有加单引号3. UPDATE 或 DELETE 忘记写 WHERE4. 把 NULL 当成空字符串5. 用姓名代替唯一编号定位学生六、基础语法速查七、动手练习八、写在最后本文适合 MySQL 零基础、数据库课程学习、期末复习和后端入门。学完后你可以独立创建数据库和数据表并完成最常用的增、删、改、查操作。第一次学 MySQL最容易陷入一个误区背了很多命令却不知道这些命令为什么要这样写。这篇文章不零散讲语法而是围绕一个简化的“学生选课管理系统”完成第一轮实战先设计一张学生表再把数据写进去、查出来、改正确、删干净。一、先弄清 4 个基本概念假设学校需要保存学生信息可以把数据组织成下面这张表idnamegenderageclass_name1张三男19软件1班2李四女20软件1班从这张表可以理解数据库中的四个核心概念数据库Database存放和管理数据的仓库例如school_db。数据表Table保存某一类数据的结构例如学生表student。字段Column表中的一列例如姓名字段name。记录Row表中的一行例如张三的完整信息。一句话记忆一个数据库包含多张表一张表包含多个字段和多条记录。MySQL 和 SQL 有什么区别MySQL 是数据库管理系统SQL 是操作关系型数据库的语言。我们安装和使用的是 MySQL写下的CREATE、INSERT、SELECT等命令属于 SQL。初学阶段常见的 SQL 可以简单分为类型作用常见命令DDL定义数据库结构CREATE、ALTER、DROPDML增删改表中数据INSERT、UPDATE、DELETEDQL查询数据SELECT不必急着背分类先会使用再回头总结会更自然。二、创建第一个数据库创建用于练习的数据库CREATEDATABASEIFNOTEXISTSschool_dbDEFAULTCHARACTERSETutf8mb4;其中IF NOT EXISTS数据库不存在时才创建避免重复执行时报错utf8mb4能够完整保存中文和常见特殊字符。创建后必须选择数据库否则 MySQL 不知道接下来的表要放在哪里USEschool_db;可以用下面的语句确认当前正在使用哪个数据库SELECTDATABASE();三、设计并创建学生表建表前先确定“要存什么”和“用什么类型存”。字段类型含义设计理由idINT学生编号整数便于排序和关联nameVARCHAR(20)姓名文本长度不固定genderVARCHAR(10)性别示例中直接保存文字ageTINYINT UNSIGNED年龄非负且数值范围较小class_nameVARCHAR(30)班级班级名称属于文本创建表CREATETABLEstudent(idINTPRIMARYKEYAUTO_INCREMENT,nameVARCHAR(20)NOTNULL,genderVARCHAR(10),ageTINYINTUNSIGNED,class_nameVARCHAR(30));这里先记住三个最常用的规则PRIMARY KEY主键每条记录的id必须唯一AUTO_INCREMENT插入数据时不写idMySQL 会自动递增编号NOT NULL姓名不能为空。查看表结构DESCstudent;建表不是把所有字段都写成VARCHAR。数字是否要计算、文本最长多长、字段能否为空都会影响类型选择。四、掌握最核心的 CRUDCRUD 是四类基础操作的缩写Create新增、Read查询、Update修改、Delete删除。几乎所有管理系统都离不开它们。1. 新增数据INSERT一次插入三名学生INSERTINTOstudent(name,gender,age,class_name)VALUES(张三,男,19,软件1班),(李四,女,20,软件1班),(王五,男,18,软件2班);推荐始终写出字段名。这样即使以后调整表结构也能清楚知道每个值对应哪个字段。2. 查询数据SELECT查看全部字段和全部记录SELECT*FROMstudent;实际开发中更推荐只查询需要的字段SELECTname,class_nameFROMstudent;按条件查询年龄不小于 19 岁的学生SELECTid,name,ageFROMstudentWHEREage19;WHERE决定“操作哪些记录”是查询、修改和删除时最重要的条件关键字。3. 修改数据UPDATE把张三的年龄改为 20UPDATEstudentSETage20WHEREid1;修改前最好先用相同条件查询SELECT*FROMstudentWHEREid1;确认查询结果正是目标记录再执行UPDATE可以显著减少误操作。4. 删除数据DELETE删除王五的记录DELETEFROMstudentWHEREid3;DELETE删除的是记录不是数据表。删除表结构使用的是DROP TABLE两者不要混淆。五、初学者最容易踩的 5 个坑1. 忘记选择数据库出现“No database selected”时先执行USEschool_db;2. 字符串没有加单引号错误INSERTINTOstudent(name)VALUES(张三);正确INSERTINTOstudent(name)VALUES(张三);数字通常直接写字符串和日期通常使用单引号。3.UPDATE或DELETE忘记写WHEREUPDATEstudentSETage20;这条语句会把所有学生的年龄都改为 20。执行修改或删除前应检查三件事是否写了WHERE、条件是否准确、是否先用SELECT验证过。4. 把NULL当成空字符串NULL表示未知或缺失表示一个长度为 0 的字符串它们不是一回事。判断空值应使用SELECT*FROMstudentWHEREgenderISNULL;5. 用姓名代替唯一编号定位学生真实系统可能存在同名学生修改和删除时更稳妥的做法是使用主键id不要只凭姓名定位记录。六、基础语法速查需求SQL 模板创建数据库CREATE DATABASE 数据库名;选择数据库USE 数据库名;创建表CREATE TABLE 表名 (...);插入数据INSERT INTO 表名 (字段) VALUES (值);查询数据SELECT 字段 FROM 表名 WHERE 条件;修改数据UPDATE 表名 SET 字段值 WHERE 条件;删除数据DELETE FROM 表名 WHERE 条件;七、动手练习不要只看代码建议亲自完成下面 4 个任务新增学生“赵六”女19 岁软件2班查询软件1班学生的姓名和年龄把id 2的学生年龄改为 21删除id 3的学生并查询剩余数据。参考答案INSERTINTOstudent(name,gender,age,class_name)VALUES(赵六,女,19,软件2班);SELECTname,ageFROMstudentWHEREclass_name软件1班;UPDATEstudentSETage21WHEREid2;DELETEFROMstudentWHEREid3;SELECT*FROMstudent;八、写在最后学完这一篇你已经完成了 MySQL 的第一条完整操作链设计字段 → 创建数据库 → 创建数据表 → 插入数据 → 查询验证 → 修改和删除。但真实系统不会只有一张表也不会永远只查全部数据。下一篇将继续使用学生选课系统讲清条件查询、排序、聚合、分组和多表连接让你从“会查数据”进阶到“能从数据中得到结果”。前路漫漫同频的人终会奔赴同一个方向✨如果这篇内容对你有所启发麻烦点个赞、关注博主干货建议先收藏避免之后找不到。后续还会持续输出更多实用教程创作不易还请多多支持专栏下一篇《零基础学 MySQL中条件查询、分组统计与多表连接》

相关新闻

2026/8/25 15:27:03

深入浅出 STM32(十八):时钟树、总线与寄存器的底层联动机制

目录前言一、MCU内部架构与时钟树的深度打通1.1 从“两张皮”到“合二为一”的认知跨越1.2 官方资料的局限性与自建理解模型1.3 总线的本质:三类信号线的集合1.4 寄存器统一编址与CPU访问机制1.5 设备协同与时钟同步的关键作用二、时钟树如何驱动整个MCU2.1 时钟树与…

2026/8/25 15:22:02

UVM 虚拟序列 vsequence 与 vsequencer:SOC 验证的“调度艺术”

从单个 Agent 到多 Agent 协同,需要一位“总指挥” 在模块级验证中,一个 uvm_sequence 运行在对应 Agent 的 sequencer 上,产生激励,一切顺理成章。但到了 SOC 级验证,系统由 CPU、DMA、IO 等多个子模块组成,每个子模块都有自己的 agent 和 sequencer。测试用例往往需要…

2026/8/25 15:22:02

医疗AI可扩展网格信息系统中网格计算技术的智能优化

研究综述 证据分级 | 主题:架构范式 智能优化 临床转化 | 编制:Buddy | 日期:2026-08-21 本报告围绕"医疗AI可扩展网格信息系统"中网格计算技术的智能优化展开,覆盖四条主线:①架构范式演进(c…

2026/8/25 20:28:25

基于Stable Diffusion的定制化Meme生成:从LoRA模型部署到批量生产实践

这次我们来看一个名为“黑晶王狂笑MEME⚡︎”的AI图像生成项目。这个名字听起来很酷,但它本质上是一个基于Stable Diffusion等技术的Meme(网络梗图)生成工具或工作流。它的核心目标不是生成写实照片或艺术画,而是快速、批量地制作…

2026/8/25 20:28:25

自动驾驶汽车为何需要300GB内存?深度解析内存需求与架构演进

1. 项目概述:当自动驾驶汽车成为“内存怪兽”最近在行业里跟几个做自动驾驶域控制器的朋友聊天,大家不约而同地提到了一个词:“内存墙”。这让我想起了美光(Micron)之前抛出的一个观点:未来的自动驾驶汽车&…

2026/8/25 20:28:25

【问题】怎么通过实验正确计算数据的标准差?

实验数据通常仅为总体的‌样本‌,应优先计算‌样本标准差‌(分母用 n-1)以无偏估计总体波动;仅当数据涵盖研究对象‌全部个体‌时才用总体标准差(分母用 N)。 tsstd std(ts) tsstd std(ts,Name,Value) ts…

2026/8/25 20:28:25

实时自适应LiDAR场景补全:原理、实践与工程化部署指南

这次我们来看一个面向实时与自适应需求的 LiDAR 场景补全前沿研究。这篇来自 arXiv 的论文《Towards Real-Time and Adaptable LiDAR Scene Completion》探讨了一个在自动驾驶和机器人领域非常核心的问题:如何让激光雷达(LiDAR)在复杂、动态的…

2026/8/25 20:28:24

从信号处理到AI模型:破解无语义音频识别的技术挑战与实践方案

1. 从“听音辨意”到“听音辨危”:一个被忽视的监管难题最近在做一个内容安全相关的项目,和几个做审核的朋友聊天,他们都在吐槽同一个问题:文字、图片、视频的识别技术现在都挺成熟了,但音频这块,尤其是那种…

2026/8/25 20:23:24

30亿Token实战:用DeepSeek大模型从零开发完整游戏

在游戏开发领域,我们常常面临一个核心矛盾:创意无限,但实现创意的技术、时间和资源总是有限的。无论是独立开发者还是小型团队,从零开始构建一个玩法新颖、内容丰富的游戏,往往需要投入数月甚至数年的精力。近年来&…

2026/8/25 1:04:19

[光学原理与应用-521]:对光的错误理解与纠偏

首先光是一种能量的载体和形态,宏观上观察到的光是由无数个微观的光量子组成的,每个光子在产生的瞬间,其在真空的空间中以确定不变的速度沿着一个初始的方向一直向前,在微观层面,每个光量子的运动轨迹是以波函数所展现…

2026/8/25 11:48:27

SIP通话转接原理与REFER方法实战解析

1. 通话转接不是“挂断再拨号”,而是SIP会话的动态重定向你有没有遇到过这样的场景:客服坐席A正在和客户通电话,突然需要把这通对话无缝转给专家坐席B,客户完全感知不到中间的断连——既没听到忙音,也没被要求重新拨号…

2026/8/25 16:56:43

Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

1. 为什么选择Kolla-ansible来部署单节点OpenStack?如果你正在寻找一种能把OpenStack从“概念”快速变成“可用的实验环境”的方法,那么Kolla-ansible几乎是当前最主流、最省心的选择。我见过太多人卡在手动编译依赖、配置服务、处理版本冲突的泥潭里&am…

2026/8/25 0:04:14

三步把QQ空间历史说说导出到本地:GetQzonehistory 极简指南

三步把QQ空间历史说说导出到本地:GetQzonehistory 极简指南 【免费下载链接】GetQzonehistory 获取QQ空间发布的历史说说 项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory Meta Description:GetQzonehistory 是一个QQ空间历史说…

2026/8/25 0:04:14

洛谷 P7912:[CSP-J 2021 T4] 小熊的果篮 ← 双向链表

【题目来源】 https://www.luogu.com.cn/problem/P7912 【题目描述】 小熊的水果店里摆放着一排 n 个水果。每个水果只可能是苹果或桔子,从左到右依次用正整数 1,2,…,n 编号。连续排在一起的同一种水果称为一个“块”。小熊要把这一排水果挑到若干个果篮里&#x…

2026/8/24 13:42:17

实测才敢推 AI论文网站 2026最新测评与推荐

2026年真正好用的AI论文网站,核心看生成的论文质量、低AI味、格式正确、学术适配四大指标。综合实测,千笔AI、ThouPen、豆包、DeepSeek、Grammarly 是当前最值得推荐的梯队,覆盖从免费到付费、从中文到英文、从文科到理工的全场景需求。一、综…

2026/8/24 18:13:48

2026必备!AI论文网站测评:最新推荐与深度对比

2026年真正好用的AI论文网站,核心看生成的论文质量、低AI味、格式正确、学术适配四大指标。综合实测,千笔AI、ThouPen、豆包、DeepSeek、Grammarly 是当前最值得推荐的梯队,覆盖从免费到付费、从中文到英文、从文科到理工的全场景需求。 一、…

2026/8/25 1:08:14

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

一天写完毕业论文在2026年已不再是天方夜谭。2026年最炸裂、实测能大幅提速的AI论文写作工具,覆盖选题构思、文献整理、内容生成、格式排版等核心场景,真正帮你高效搞定论文难题。 一、全流程王者:一站式搞定论文全链路(一天定稿首…