- MySQL 基础
- MySQL - 首页
- MySQL - 简介
- MySQL - 特性
- MySQL - 版本
- MySQL - 变量
- MySQL - 安装
- MySQL - 管理
- MySQL - PHP 语法
- MySQL - Node.js 语法
- MySQL - Java 语法
- MySQL - Python 语法
- MySQL - 连接
- MySQL - Workbench
- MySQL 数据库
- MySQL - 创建数据库
- MySQL - 删除数据库
- MySQL - 选择数据库
- MySQL - 显示数据库
- MySQL - 复制数据库
- MySQL - 数据库导出
- MySQL - 数据库导入
- MySQL - 数据库信息
- MySQL 用户
- MySQL - 创建用户
- MySQL - 删除用户
- MySQL - 显示用户
- MySQL - 修改密码
- MySQL - 授予权限
- MySQL - 显示权限
- MySQL - 收回权限
- MySQL - 锁定用户帐户
- MySQL - 解锁用户帐户
- MySQL 表
- MySQL - 创建表
- MySQL - 显示表
- MySQL - 修改表
- MySQL - 重命名表
- MySQL - 克隆表
- MySQL - 清空表
- MySQL - 临时表
- MySQL - 修复表
- MySQL - 描述表
- MySQL - 添加/删除列
- MySQL - 显示列
- MySQL - 重命名列
- MySQL - 表锁定
- MySQL - 删除表
- MySQL - 派生表
- MySQL 查询
- MySQL - 查询
- MySQL - 约束
- MySQL - INSERT 查询
- MySQL - SELECT 查询
- MySQL - UPDATE 查询
- MySQL - DELETE 查询
- MySQL - REPLACE 查询
- MySQL - INSERT IGNORE
- MySQL - INSERT ON DUPLICATE KEY UPDATE
- MySQL - INSERT INTO SELECT
- MySQL 运算符和子句
- MySQL - WHERE 子句
- MySQL - LIMIT 子句
- MySQL - DISTINCT 子句
- MySQL - ORDER BY 子句
- MySQL - GROUP BY 子句
- MySQL - HAVING 子句
- MySQL - AND 运算符
- MySQL - OR 运算符
- MySQL - LIKE 运算符
- MySQL - IN 运算符
- MySQL - ANY 运算符
- MySQL - EXISTS 运算符
- MySQL - NOT 运算符
- MySQL - 不等于运算符
- MySQL - IS NULL 运算符
- MySQL - IS NOT NULL 运算符
- MySQL - BETWEEN 运算符
- MySQL - UNION 运算符
- MySQL - UNION 与 UNION ALL
- MySQL - MINUS 运算符
- MySQL - INTERSECT 运算符
- MySQL - INTERVAL 运算符
- MySQL 连接
- MySQL - 使用连接
- MySQL - INNER JOIN
- MySQL - LEFT JOIN
- MySQL - RIGHT JOIN
- MySQL - CROSS JOIN
- MySQL - FULL JOIN
- MySQL - 自连接
- MySQL - DELETE JOIN
- MySQL - UPDATE JOIN
- MySQL - UNION 与 JOIN
- MySQL 触发器
- MySQL - 触发器
- MySQL - 创建触发器
- MySQL - 显示触发器
- MySQL - 删除触发器
- MySQL - BEFORE INSERT 触发器
- MySQL - AFTER INSERT 触发器
- MySQL - BEFORE UPDATE 触发器
- MySQL - AFTER UPDATE 触发器
- MySQL - BEFORE DELETE 触发器
- MySQL - AFTER DELETE 触发器
- MySQL 数据类型
- MySQL - 数据类型
- MySQL - VARCHAR
- MySQL - BOOLEAN
- MySQL - ENUM
- MySQL - DECIMAL
- MySQL - INT
- MySQL - FLOAT
- MySQL - BIT
- MySQL - TINYINT
- MySQL - BLOB
- MySQL - SET
- MySQL 正则表达式
- MySQL - 正则表达式
- MySQL - RLIKE 运算符
- MySQL - NOT LIKE 运算符
- MySQL - NOT REGEXP 运算符
- MySQL - regexp_instr() 函数
- MySQL - regexp_like() 函数
- MySQL - regexp_replace() 函数
- MySQL - regexp_substr() 函数
- MySQL 函数 & 运算符
- MySQL - 日期和时间函数
- MySQL - 算术运算符
- MySQL - 数值函数
- MySQL - 字符串函数
- MySQL - 聚合函数
- MySQL 其他概念
- MySQL - NULL 值
- MySQL - 事务
- MySQL - 使用序列
- MySQL - 处理重复项
- MySQL - SQL 注入
- MySQL - 子查询
- MySQL - 注释
- MySQL - 检查约束
- MySQL - 存储引擎
- MySQL - 将表导出到 CSV 文件
- MySQL - 将 CSV 文件导入数据库
- MySQL - UUID
- MySQL - 公共表表达式
- MySQL - ON DELETE CASCADE
- MySQL - Upsert
- MySQL - 水平分区
- MySQL - 垂直分区
- MySQL - 游标
- MySQL - 存储函数
- MySQL - SIGNAL
- MySQL - RESIGNAL
- MySQL - 字符集
- MySQL - 排序规则
- MySQL - 通配符
- MySQL - 别名
- MySQL - ROLLUP
- MySQL - 今日日期
- MySQL - 字面量
- MySQL - 存储过程
- MySQL - EXPLAIN
- MySQL - JSON
- MySQL - 标准差
- MySQL - 查找重复记录
- MySQL - 删除重复记录
- MySQL - 选择随机记录
- MySQL - SHOW PROCESSLIST
- MySQL - 更改列类型
- MySQL - 重置自动递增
- MySQL - COALESCE() 函数
- MySQL 有用资源
- MySQL - 有用函数
- MySQL - 语句参考
- MySQL - 快速指南
- MySQL - 有用资源
- MySQL - 讨论
MySQL - 简介
什么是数据库?
数据库用于存储数据的集合(可以是结构化的或非结构化的)。每个数据库都有一个或多个不同的 API 用于创建、访问、管理、搜索和复制它保存的数据。
其他类型的存储也可以用于管理数据,例如文件系统上的文件或内存中大型哈希表,但是使用这些类型的系统,数据提取和写入速度不会那么快且容易。
如今,我们使用关系数据库管理系统 (RDBMS) 来存储和管理海量数据。在这种数据库中,数据以结构化的方式存储在不同的表中。这些表之间使用主键或其他称为外键的键建立关系。
关系数据库管理系统 (RDBMS) 是一种软件,它可以:
使您能够实现具有表、列和索引的数据库。
保证各个表行之间的参照完整性。
自动更新索引。
解释 SQL 查询并组合来自各个表的信息。
关系数据库管理系统术语
在我们继续解释 MySQL 数据库系统之前,让我们回顾一下与数据库相关的几个定义。
数据库 - 数据库是具有相关数据的表的集合。
表 - 表是一个包含数据的矩阵。数据库中的表看起来像一个简单的电子表格。
列 - 一列(数据元素)包含一种相同类型的数据,例如邮政编码列。
行 - 行(=元组、条目或记录)是一组相关数据,例如一个订阅的数据。
冗余 - 为了使系统更快,重复存储数据。
主键 - 主键是唯一的。一个键值在一个表中不能出现两次。使用键,您只能找到一行。
外键 - 外键是两个表之间的连接。
复合键 - 复合键(组合键)是由多列组成的键,因为一列不够唯一。
索引 - 数据库中的索引类似于书末的索引。
参照完整性 - 参照完整性确保外键值始终指向现有行。
MySQL 数据库
MySQL 是一款快速易用的 RDBMS,被许多大小企业使用。它由瑞典公司 MySQL AB 开发、销售和支持。MySQL 如此受欢迎是有很多好理由的:
MySQL 是在开源许可下发布的。因此,您无需付费即可使用它。
MySQL 本身就是一个非常强大的程序。它处理了最昂贵和最强大的数据库软件包的大部分功能。
MySQL 使用众所周知的标准 SQL 数据语言。
MySQL 可以在许多操作系统和许多语言(包括 PHP、PERL、C、C++、JAVA 等)上运行。
MySQL 运行速度非常快,即使在大型数据集上也能很好地工作。
MySQL 对 PHP(最受推崇的 Web 开发语言)非常友好。
MySQL 支持大型数据库,一个表中最多可容纳 5000 万行或更多行。表的默认文件大小限制为 4GB,但您可以将其(如果您的操作系统可以处理)增加到理论上的 800 万 TB(TB)的限制。
MySQL 是可定制的。开源 GPL 许可证允许程序员修改 MySQL 软件以适应他们自己的特定环境。
MySQL 的历史
MySQL由Michael Widenius和David Axmark于1994年开始开发。
1995年5月23日首次内部发布。
1998年1月8日发布Windows版本,适用于Windows 95和NT。
3.23版本:2000年6月发布测试版,2001年1月发布正式版。
4.0版本:2002年8月发布测试版,2003年3月发布正式版(包含联合查询)。
4.1版本:2004年6月发布测试版,2004年10月发布正式版。
5.0版本:2005年3月发布测试版,2005年10月发布正式版。
2008年2月26日,Sun Microsystems收购MySQL AB。
5.1版本:2008年11月27日发布正式版。
2010年1月27日,Oracle收购Sun Microsystems。
5.5版本:2010年12月3日正式上市。
5.6版本:2013年2月5日正式上市。
5.7版本:2015年10月21日正式上市。
8.0版本:2018年4月19日正式上市。
开始之前
在开始本教程之前,您应该掌握我们PHP和HTML教程中介绍的基本知识。
本教程重点介绍在PHP环境中使用MySQL。本教程中提供的许多示例对PHP程序员都很有用。
我们建议您参考我们的PHP教程。