数据库基础
在开始学习 SQL 之前,需要理解数据库的基本概念。本章将介绍数据库的核心概念、关系模型和基本术语,为后续学习打下坚实基础。
什么是数据库?
定义
数据库是一个有组织的数据集合,通常存储在计算机系统中。它允许用户高效地存储、检索和管理数据。
数据库管理系统(DBMS)
数据库管理系统(Database Management System)是用于创建、管理和操作数据库的软件。常见的 DBMS 包括:
- MySQL
- PostgreSQL
- SQL Server
- Oracle
- SQLite
关系
数据库 ← 存储数据的地方
DBMS ← 管理数据库的软件
SQL ← 与 DBMS 交互的语言
关系数据库
核心概念
关系数据库是基于关系模型(Relational Model)的数据库系统,数据以表格(表)的形式存储。
表格示例
这是一个典型的数据库表,包含行和列。
数据库基本术语
1. 表(Table)
表是数据库中存储数据的基本单位,类似于 Excel 表格。
示例:用户表
2. 列(Column)
列定义了表中数据的类型和属性,也称为字段(Field)。
列的特性
- 数据类型:定义列中数据的类型(整数、文本、日期等)
- 约束:限制列中数据的规则(不能为空、必须唯一等)
- 默认值:如果没有提供值时使用的默认值
示例:列定义
3. 行(Row)
行也称为记录(Record),是表中的一条完整数据。
示例:行数据
4. 主键(Primary Key)
主键是表中唯一标识每一行的列,主键的值不能重复且不能为空。
主键的特点
- 唯一性:每行的主键值必须唯一
- 非空性:主键值不能为 NULL
- 不变性:主键值通常不改变
示例:定义主键
5. 外键(Foreign Key)
外键是一个表中的列,它引用另一个表的主键,用于建立表之间的关系。
外键的作用
- 确保数据的一致性
- 建立表之间的关联
- 防止无效数据的插入
示例:外键关系
6. 索引(Index)
索引是提高查询性能的数据结构,类似于书的目录。
索引的作用
- 加快数据检索速度
- 优化查询性能
- 但会占用额外存储空间
示例:创建索引
数据库结构
数据库 → 表 → 行列
层次结构
- 数据库服务器:运行 DBMS 的计算机
- 数据库:存储相关表的集合
- 表:存储相关数据的结构
- 行/列:实际的数据单元
关系模型
一对一关系(1:1)
一个表中的一条记录对应另一个表中的一条记录。
示例:用户和用户详情
一对多关系(1:N)
一个表中的一条记录对应另一个表中的多条记录。
示例:用户和订单
多对多关系(M:N)
两个表中的记录可以相互对应多个。
示例:学生和课程
常见数据类型
数值类型
字符串类型
日期时间类型
布尔类型
数据库设计原则
1. 数据规范化
规范化是组织数据库表的过程,目的是减少数据冗余和提高数据完整性。
2. 主键设计
- 使用单一列作为主键
- 使用自动增长的整数
- 避免使用有业务含义的列
3. 命名规范
- 使用有意义的名称
- 使用小写字母和下划线
- 避免使用保留字
实际示例:电商平台
数据库结构
数据关系
数据库操作的基本流程
1. 连接数据库
2. 选择数据库
3. 执行查询
4. 断开连接
小结
本章介绍了数据库的基础概念:
- 数据库定义:有组织的数据集合
- 关系数据库:基于关系模型的数据库
- 基本术语:表、列、行、主键、外键、索引
- 数据类型:数值、字符串、日期时间、布尔
- 关系类型:一对一、一对多、多对多
- 设计原则:规范化、主键设计、命名规范
理解这些基本概念是学习 SQL 的基础,在接下来的章节中,我们将学习如何使用 SQL 来实际操作数据库。
下一步: 学习 SQL 基础语法,开始编写你的第一条 SQL 语句。