MySQL 是目前最流行的开源关系型数据库管理系统之一凭借高性能、高可靠性和易用性被广泛应用于各类 Web 应用、电商平台、内容管理系统以及数据分析场景。它支持标准的 SQL 语言能够高效地存储、查询和管理结构化数据同时提供事务处理、索引优化、权限控制等丰富功能满足从小型项目到大型企业级应用的不同需求。无论是后端开发、数据运维还是数据分析掌握 MySQL 基础都是必备技能。本文将从数据库层级结构、数据类型、约束、SQL 语句以及 Python 中的使用等方面系统介绍 MySQL 的核心基础知识并结合之前学习的 FastAPI 框架展示如何将 MySQL 与 Web 后端开发结合起来帮助读者快速入门并打下扎实基础。一、数据库层级结构名词中文说明Database数据库一个库里面装多张表Table表存数据的地方行列组成Row / Record行 / 记录表里的一条数据Column / Field列 / 字段表里的一个属性Schema模式表结构的定义有时也指数据库Index索引加快查询的目录二、数据类型名词中文说明INT整数存整数VARCHAR变长字符串最多 n 个字符CHAR定长字符串固定 n 个字符不足补空格DATE日期2025-01-01DATETIME日期时间2025-01-01 12:00:00TIMESTAMP时间戳时间戳类型三、约束PRIMARY KEY主键唯一标识一行不能重复、不能为空NOT NULL非空该列必须有值UNIQUE唯一该列值不能重复DEFAULT默认值不填时自动用这个值AUTO_INCREMENT自增整数列自动 1FOREIGN KEY外键关联另一张表的主键CHECK检查值必须满足条件以上是 MySQL 的基础名词需理解SQL 语句最重要1. 对表的操作1CREATE TABLE表名{字段名 数据类型 约束}2DROP TABLE表名3ALTER TABLE表名ADD 字段名2. 对数据的操作INSERT INTO 表 VALUES值1值2……DELETE FROM 数据库名 / 数据库名部分的字段名UPDATE表名SET 修改值 WHERE 条件约束SELECT要查的字段名FROM 表名 WHERE 条件约束USE pachun; CREATE TABLE lianxi( id INT not NULL PRIMARY KEY, name VARCHAR(11) ); alter TABLE lianxi ADD number INT; INSERT INTO lianxi(NAME,id) VALUES(红烧冬瓜,1) DELETE FROM lianxi WHERE NAME红烧冬瓜 AND id1 UPDATE lianxi SET NAME十五看月亮 WHERE NAME红烧冬瓜 AND id1 SELECT name FROM lianxi WHERE NAME十五看月亮 AND id1DELETE 与 DROP 的区别虽然都是删除但一个是对表结构操作一个是数据操作MySQL 在 Python 中的使用名词说明connect连接对象cursor游标执行 SQL 用execute()执行 SQLfetchall()取所有结果fetchone()取一条结果commit()提交连接的rollback()回滚close()关闭操作一共是六步1. 创建数据库连接def __init__(self,host,user,password,database): self.host host self.user user self.password password self.database database def get_connect(self): return pymysql.connect(hostself.host,userself.user,passwordself.password,databaseself.database)2. 创建游标cursor connect.cursor()connect self.get_connect() cursor connect.cursor()3. SQL 语句的书写sql ...一定要是三对引号4. 游标提交执行cursor.execute(sql)5. 关闭游标cursor.close()6. 关闭数据库连接connect.close()示例import pymysql from fastapi import FastAPI import uvicorn app FastAPI() class mysql_connect: def __init__(self,host,user,password,database): self.host host self.user user self.password password self.database database def get_connect(self): return pymysql.connect(hostself.host,userself.user,passwordself.password,databaseself.database) def ruery(self,sql): connect self.get_connect() cursor connect.cursor() cursor.execute(sql) result cursor.fetchall() cursor.close() connect.close() return result def ruery2(self,sql): connect self.get_connect() cursor connect.cursor() rowscursor.execute(sql) connect.commit() cursor.close() connect.close() return rows dbmysql_connect( hostlocalhost, userroot, passwordroot, databasepachun ) app.get(/mysql_connect) def lianxi(): result db.ruery(SELECT name FROM lianxi WHERE NAME十五看月亮 AND id1) return {data: result} if __name__ __main__: uvicorn.run(app, host127.0.0.1, port8000)
企业数字化 ERP 产品动态
相关推荐
Keil MDK芯片包安装失败?三个隐藏设置与完整排查指南 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/24 8:42:17
组织级AI Coding落地实战:从个人提效到团队增效 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/24 8:42:04
LanceDB Node.js 多向量搜索:理解 MultiVector 类型别名与多向量查询实战 向量数据库数据库人工智能后端 【免费下载链接】lancedb Developer-friendly OSS embedded retrieval library for multimodal AI. Search More; Manage Less. 项目地址: https://gitcode.com/gh_mirrors/la/lancedb 点击查看 免费下载 MultiVector 是 lancedb/lan… · 2026/9/24 8:41:58
C语言动态内存管理详解:从malloc到柔性数组 1. 引言在C语言的学习过程中,内存管理始终是一个绕不开的核心话题。很多初学者在编写程序时,往往只关注逻辑是否正确,却忽略了内存的分配与释放。实际上,动态内存管理是C语言中极为重要的一环,它直接关系到程序的稳定性… · 2026/9/24 14:48:01
低空空域智能管控怎么做?物理AI+数字孪生完整技术架构解析 低空空域智能管控的最优物理AI方案,不应只是“无人机监控大屏”,而应该是一套能够完成空域数字化、实时感知、航线规划、仿真推演、风险预测、智能调度和应急处置的闭环系统。按照城市级数字孪生能力、空域数据融合、飞行器实时感知、仿真预测、多机协同… · 2026/9/24 14:47:47
G6 径向布局(Radial Layout)实战指南:同心圆分层、节点防重叠与聚类排序 G6 径向布局(Radial Layout)实战指南:同心圆分层、节点防重叠与聚类排序 【免费下载链接】G6 ♾ A Graph Visualization Framework in JavaScript. 项目地址: https://gitcode.com/gh_mirrors/g6/G6
径向布局(Radial Layou… · 2026/9/24 14:47:47
webnovel-writer 冲突设计实战:从一句核心冲突到整卷危机链的完整工作流 webnovel-writer 冲突设计实战:从一句核心冲突到整卷危机链的完整工作流 【免费下载链接】webnovel-writer 基于 Claude Code 的长篇网文辅助创作系统,解决 AI 写作中的「遗忘」和「幻觉」问题,支持 200 万字量级 连载创作。 项目地址: htt… · 2026/9/24 14:47:47
工业 AI 项目Sim‑to‑Real鸿沟,公共产业载体可以补齐哪些中间环节 Sim‑to‑Real(仿真到现实鸿沟)是工业 AI、具身智能赛道老生常谈的技术难题。模型在仿真环境指标表现优秀,部署到真实工厂、真实硬件之后,受光照、摩擦、噪声、设备公差影响,效果出现明显跳水。对于中小 AI 团队、硬件… · 2026/9/24 14:47:47
LanceDB 清理操作统计:RemovalStats 接口深度解析(Node.js SDK) 向量数据库数据库人工智能后端 【免费下载链接】lancedb Developer-friendly OSS embedded retrieval library for multimodal AI. Search More; Manage Less. 项目地址: https://gitcode.com/gh_mirrors/la/lancedb 点击查看 免费下载 LanceDB 的 Node.js… · 2026/9/24 14:47:41
基于YOLOv8的渔船作业监控系统:从环境搭建到边缘部署全流程 简介:这是一套面向计算机、人工智能、自动化等专业学生与教师的毕业设计级项目资源,围绕YOLOv8实现渔船作业监控系统,可用于毕设、课程设计、大作业或项目立项演示。压缩包共97个文件,约24.21MB,以70个Python源码文件为… · 2026/9/24 0:00:13
1D-CNN时间序列建模实战:从Conv1d原理到工业落地 简介:面向时间序列数据建模的一维卷积神经网络完整实现,适合深度学习入门者及需要快速验证时序模型的研究者,能够从音频、文本、传感器或股价等序列中挖掘局部特征与时间依赖。压缩包体积很小,只有3KB,内含3个Python脚… · 2026/9/24 0:00:26
柔软的L:汉语语流中被忽视的舌肌张力控制 1. 这个“L”不是字母表里的L,而是舌尖上的L最近在几个方言群和语音教学社群里,反复看到有人发一句:“也说字母L:柔软的长舌”。初看以为是英语发音课笔记,点开才发现全是方言爱好者、播音系学生、语言康复师甚至戏曲演… · 2026/9/24 0:00:44