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

数据库三四单元的知识总结


3.1 创建与管理数据库
核心概念:数据库是表、视图、存储过程等对象的集合。
关键操作:
CREATE DATABASE:创建数据库(可指定字符集、排序规则)
ALTER DATABASE:修改数据库属性(如字符集)
DROP DATABASE:删除数据库
SHOW DATABASES:查看所有数据库
USE 数据库名:切换当前数据库

常用数据类型

类型分类 常见类型 用途说明
整数类型 INT、BIGINT、TINYINT 存储整数,INT最常用
浮点数类型 FLOAT、DOUBLE、DECIMAL(M,D) 存储小数,金额推荐用DECIMAL
字符串类型 VARCHAR(n)、CHAR(n)、TEXT VARCHAR可变长度,CHAR固定长度
日期时间类型 DATE、DATETIME、TIMESTAMP DATE存日期,DATETIME存日期+时间
3. 常用约束条件(重点!)

约束 语法 作用 示例
主键约束 PRIMARY KEY 唯一标识记录,非空且唯一 id INT PRIMARY KEY
非空约束 NOT NULL 字段不能为NULL name VARCHAR(20) NOT NULL
唯一约束 UNIQUE 字段值不能重复 phone VARCHAR(11) UNIQUE
默认约束 DEFAULT 值 字段未赋值时用默认值 gender CHAR(1) DEFAULT '男'
外键约束 FOREIGN KEY 关联其他表的主键 FOREIGN KEY (dept_id) REFERENCES dept(id)
自增约束 AUTO_INCREMENT 整数主键自动递增 id INT PRIMARY KEY AUTO_INCREMENT

3.2 创建与管理数据库表
核心概念:表是存储数据的基本单元,由行和列组成,列定义了数据类型和约束。
关键操作:
CREATE TABLE:创建表(定义列名、数据类型、约束)
ALTER TABLE:修改表结构(增删列、修改列类型/约束、重命名表)
DROP TABLE:删除表
TRUNCATE TABLE:清空表数据(保留表结构)
SHOW TABLES:查看当前库中的表
DESC 表名:查看表结构
3.3 数据完整性约束
核心概念:保证数据的正确性、一致性和有效性。
5种核心约束:
主键约束(PRIMARY KEY):唯一标识表中的每一行,非空且唯一。
替代键约束(UNIQUE):保证列的值唯一,但可以为NULL(可多个)。
参照完整性约束(FOREIGN KEY):保证外键列的值必须在主表的主键列中存在,用于表间关联。
CHECK约束:限制列的值必须满足指定条件(如age>0)。
非空约束(NOT NULL):保证列的值不能为NULL。
3.4 图形化管理工具操作
使用Navicat、MySQL Workbench等工具创建/修改/删除数据库和表
可视化方式设置数据完整性约束(主键、外键、唯一、非空等)

单元4:数据操作(DML)
核心目标:对表中的数据进行增、删、改操作。
4.1 数据插入(INSERT)
• 基础语法:

INSERT INTO 表名(列1, 列2, ...) VALUES(值1, 值2, ...);
• 批量插入:

INSERT INTO 表名 VALUES(值1, 值2), (值3, 值4), ...;
• 插入查询结果:

INSERT INTO 目标表 SELECT * FROM 源表;

--示例:给student表插入数据

INSERT INTO student(id, name, age) VALUES(1, '张三', 18);

4.2 数据修改(UPDATE)
• 基础语法:

UPDATE 表名 SET 列1=值1, 列2=值2 WHERE 条件;
• 注意:必须加WHERE条件,否则会修改所有行!
4.3 数据删除(DELETE & TRUNCATE)
• DELETE语句:

DELETE FROM 表名 WHERE 条件;
◦ 特点:可以按条件删除,支持事务回滚,删除的数据可以恢复(在事务中)。
• TRUNCATE TABLE语句:

TRUNCATE TABLE 表名;
◦ 特点:直接清空整个表,无法按条件删除,不支持事务回滚,执行速度比DELETE快。


补充对比:DELETE vs TRUNCATE

特性 DELETE TRUNCATE
语法 DELETE FROM 表名 WHERE ... TRUNCATE TABLE 表名
条件删除 支持WHERE条件 不支持,直接清空
事务回滚 可以回滚 无法回滚
执行速度 较慢 很快
自增主键 不会重置 会重置为初始值

http://www.jsqmd.com/news/843304/

相关文章:

  • 激光雷达仿真:禾赛与NVIDIA联手,如何用数字孪生重塑自动驾驶研发?
  • ARM MHU寄存器访问机制与性能优化解析
  • 7B秒杀70B!大模型微调秘籍全解:从理论到实战,玩转高效适配!
  • CCS里已有工程复制到工作空间里
  • OpenCode + OpenSpec 实战指南:从“凭感觉编码”到“规范驱动开发”
  • CentOS 7 虚拟机联网与 yum 源配置笔记
  • SkyWalking 链路追踪实战:从零搭建微服务可观测性体系
  • 量子计算中的弦断裂现象与VQE模拟技术
  • Arm SVE2向量存储指令ST1W与ST2B详解
  • 我终于把AI应用拆明白了:Agent、RAG、MCP
  • 家用装修选球形锁易踩坑?这3个防盗安全要点助你挑到靠谱款
  • 数据分析师简历封神指南:数据可视化 + 业务洞察双重点
  • .NET EFCore批量插入性能优化实战:30秒 → 0.5秒
  • STM32——软件IIC显示字符
  • Arm Compiler 6.19嵌入式开发工具链解析
  • 告别卡顿!在Ubuntu 22.04上5分钟启用官方实时内核(PREEMPT-RT),音频/机器人开发必备
  • A股量化策略日报()
  • 1987年7月14日中午11-13点出生性格、运势和命运
  • 如何彻底解决机械键盘连击问题:智能按键优化完整指南
  • ECC 从安装到精通
  • 65页精品PPT | 数字化转型规划思想与方法
  • 质子CT技术:原理、系统设计与临床应用
  • 从TensorFlow到Rockchip NPU:MobileNet V2模型在YY3568开发板的完整部署实践
  • 视频无损切割神器-视频分割大师,简单粗暴快!
  • markdown笔记(没找到合适笔记软件,暂存)
  • Chromium 浏览器引擎移植到 OHOS 平台
  • 7-DOF机械臂自适应NT-STSM控制算法解析与应用
  • 接收机动态范围:从核心概念到工程实践,提升复杂电磁环境下的信号接收能力
  • 动态目标跨镜无缝接力追踪技术在仓储物流安全场景中的应用白皮书
  • AI行业的“隐形赛道”:AI伦理与合规人才缺口到底有多大