当前位置: 首页 > news >正文

SQL语法指南

MySQL数据库与表操作:从零开始掌握CURD(创建与查询篇)​

一、前言

在软件开发中,绝大多数业务场景都离不开对数据的增删改查,即我们常说的 ​CURD (Create, Update, Read, Delete)​。而这一切操作的前提,是有一个组织良好的数据库和表结构。本文将作为MySQL数据库操作的入门指南,详细讲解如何对数据库(Database)​​ 和表(Table)​​ 进行基本的CURD操作,本篇重点聚焦于创建(Create)​​ 和查询(Read)​

无论你是刚刚接触数据库的初学者,还是需要一份速查笔记的开发者,相信这篇文章都能为你提供清晰的指引。文中所有代码示例均经过验证,可直接使用。


二、数据库(Database)的CURD操作
1. 创建数据库(Create)​

创建数据库是我们所有操作的起点。MySQL提供了基本的和可定制化的创建语法。

  • 基本语法:​

    CREATE DATABASE 数据库名称;
  • 正规语法(推荐):​
    为了避免乱码等问题,建议创建时就指定字符编码和校对规则。

    CREATE DATABASE 数据库名称 CHARACTER SET '编码' COLLATE '校对规则';
    • 字符集 (CHARACTER SET)​​: 常用 utf8 或 utf8mb4 (支持更完整的 Unicode,如表情符号)。
    • 校对规则 (COLLATE)​​: 决定了字符串比较、排序的规则,如 utf8_bin 区分大小写,utf8_general_ci 不区分大小写(默认)。

实战示例:​

-- 1. 创建一个名称为 mydb1 的数据库(使用默认配置)
CREATE DATABASE mydb1;-- 2. 创建一个使用 utf8 字符集的 mydb2 数据库
CREATE DATABASE mydb2 CHARACTER SET 'utf8';-- 3. 创建一个使用 utf8 字符集,并带校对规则(区分大小写)的 mydb3 数据库
CREATE DATABASE mydb3 CHARACTER SET 'utf8' COLLATE 'utf8_bin';
2. 查看数据库(Read)​

创建完成后,我们需要查看和确认数据库的信息。

  1. 查看当前MySQL服务器中的所有数据库:​

    SHOW DATABASES;
  2. 切换/使用某个特定的数据库:​​ (非常重要!后续对表的操作都在当前选择的数据库中进行)

    USE 数据库名称;
  3. 查看某个数据库的定义信息(创建时的SQL语句):​

    SHOW CREATE DATABASE 数据库名称;
  4. 查询当前正在使用的数据库:​

    SELECT DATABASE();
3. 修改数据库(Update)​

主要用于修改数据库的字符集和校对规则。​​(注意:此操作需谨慎,尤其当数据库中已有数据时)​

  • 语法:​

    ALTER DATABASE 数据库名称 CHARACTER SET '新编码' COLLATE '新校对规则';
  • 示例:将 mydb2 的字符集修改为 gbk

    ALTER DATABASE mydb2 CHARACTER SET 'gbk';
4. 删除数据库(Delete)​

删除数据库会移除该数据库和其中的所有数据,​此操作不可逆,务必谨慎!​

  • 语法:​

    DROP DATABASE 数据库名称;
  • 示例:删除 mydb1 数据库

    DROP DATABASE mydb1;

三、表(Table)结构的CURD操作

在确定了数据库之后,我们需要在其中创建表来存储具体的数据。

1. 创建表(Create)​
  • 核心语法:​

    CREATE TABLE 表名称 (字段1 类型(长度) 约束,字段2 类型(长度) 约束,字段3 类型(长度) 约束,...-- 最后一个字段后面没有逗号!
    );
  • 注意事项(避坑指南):​

    • 创建表时,表名后面必须跟一对小括号 (),括号后才是分号 ;
    • 括号内编写字段,字段与字段之间使用逗号 , 分隔。
    • 最后一个字段的后面绝对不能有逗号,这是一个常见的语法错误。
    • 声明字符串数据类型(如 VARCHAR)时,​必须指定长度​(例如:varchar(50))。
    • 某些数据类型有不指定长度时的默认值,例如 int 类型的默认长度是 11。
  • 常用数据类型:​

    • INT: 整型
    • DOUBLE: 浮点型
    • VARCHAR(n): 可变长度字符串(必须指定长度n
    • CHAR(n): 定长字符串
    • DATE: 日期类型 (YYYY-MM-DD)
    • TEXT: 长文本数据
    • DATETIME: 日期时间类型 (YYYY-MM-DD HH:MM:SS)

实战示例:创建一张员工表(employee)​

-- 首先,确保选择了正确的数据库
USE mydb2;-- 执行建表SQL语句
CREATE TABLE employee (id INT,name VARCHAR(30),gender CHAR(5),birthday DATE,entry_date DATE,job VARCHAR(50),salary DOUBLE,resume TEXT -- 最后一个字段没有逗号
);
2. 查看表(Read)​

创建表后,我们可以查看其结构信息。

  • 查看表结构(最常用、最直观):​

    DESC 表名称;

    执行 DESC employee; 后,会返回一个清晰的表格视图:

    FieldTypeNullKeyDefaultExtra
    idint(11)YESNULL
    namevarchar(30)YESNULL
    genderchar(5)YESNULL
    ..................
    • Field: 字段名
    • Type: 数据类型(及长度)
    • Null: 是否允许为NULL值
    • Key: 是否包含索引(如主键、外键)
    • Default: 默认值
    • Extra: 额外信息(如自增)
  • 查看建表语句:​

    SHOW CREATE TABLE 表名称;

四、总结

本文系统性地讲解了MySQL中对数据库和表进行创建查看操作的核心语法,并提供了详细的示例和注意事项。

  1. 数据库操作​: 掌握了 CREATE DATABASE ... CHARACTER SET ... 的标准创建方式,以及 SHOW DATABASESUSESHOW CREATE DATABASE 等查看和切换数据库的关键命令。
  2. 表操作​: 理解了 CREATE TABLE 的语法规范,学会了如何设计字段、选择数据类型,并使用 DESC 这一神器来查看表的结构。
http://www.dtcms.com/a/349428.html

相关文章:

  • Docker基本使用方法和常用命令
  • Spring文件上传核心技术解析
  • Java 编辑器与 IDE:开发者手中的利剑与盾牌
  • 彻底解决PyCharm中Matplotlib无法显示图形及中文乱码问题
  • Nginx + Certbot配置 HTTPS / SSL 证书
  • 无人机航拍数据集|第21期 无人机四种动物目标检测YOLO数据集2857张yolov11/yolov8/yolov5可训练
  • 数据分析编程第三步:分组统计
  • 无人机航拍数据集|第17期 无人机油棕树目标检测YOLO数据集1803张yolov11/yolov8/yolov5可训练
  • 读《精益数据分析》:A/B测试与多变量测试
  • 【41页PPT】SAP数据仓库和数据分析方案(附下载方式)
  • 【C++游记】List的使用和模拟实现
  • 【机器学习入门】1.1 绪论:从数据到智能的认知革命
  • Java基础 8.25
  • 如何在Debian服务器上设置Node.js日志轮转
  • 深度学习入门第一课——神经网络实现手写数字识别
  • java后端如何实现下载功能
  • Python爬虫实战:Selenium模拟操作爬取马蜂窝旅游攻略
  • 神经网络与梯度算法:深度学习的底层逻辑与实战解析
  • Python办公——爬虫百度翻译网页版(自制翻译小工具——进阶更新版)
  • Python爬虫框架设计:类封装与工程化实践​
  • Linux驱动开发笔记(七)——并发与竞争(下)——自旋锁信号量互斥体
  • 计算机网络课堂笔记
  • frp基础知识
  • React 学习笔记2 props、refs
  • 消息中间件RabbitMQ03:结合WebAPI实现点对点(P2P)推送和发布-订阅推送的Demo
  • 从C语言到数据结构:保姆级顺序表解析
  • 使用OpenSSL生成自签名证书
  • 基于PyTorch深度学习遥感影像地物分类与目标检测、分割及遥感影像问题深度学习优化
  • 逆向抄数工程师能力矩阵:设备操作(±0.05mm 精度)× 曲面重构 ×GDT 公差分析
  • C++|UDP通讯使用总结