一、数据库基础概念
1. 数据库与数据结构关系:数据结构是组织数据的方法,数据库借助合适数据结构,方便数据的写入和查询 。数据最终存于硬盘等存储介质,与 ArrayList 集合存于内存且断电数据丢失不同,硬盘断电不丢数据 。
2. 主流数据库
- 关系型数据库:
- Oracle:甲骨文产品,适合大型项目,功能强大,需收费,常用于企业 500 强及金融、保险等领域 。
- MySQL:开源免费,在中小企业中应用广泛,如电商、论坛等场景 。
- PostgreSQL:加州大学伯克利分校开发,可免费使用、修改和分发 。
- SQL Server:微软推出,与旗下操作系统等配合,适用于大中型项目 。
- SQLite:轻型数据库,资源占用低,用于嵌入式设备、手机 APP 等 。
- 关系型数据库原理:采用关系模型组织数据,以行和列形式存储,类似二维表格,通过表间关联关系组成数据组织 。比如学生表和班级表通过班级编号建立联系 。
3. 数据库服务器、数据库与表的关系:数据库服务器本质是电脑,运行数据库软件(如 MySQL ) 。数据库软件管理不同系统对应的数据库,数据库包含多张数据表,表中保存具体数据行 。以教务系统为例,有老师表、学生表等;比特论坛有用户表、帖子表等 。
二、MySQL 相关操作
1. MySQL 安装与配置:介绍了 MySQL 在学习路径中的位置,是处理用户数据且使用广泛的软件 。包含数据库安装包及可视化客户端 。查看本地是否安装 MySQL 可通过系统服务等方式 。安装时初学阶段建议按默认配置下一步安装,注意端口号等设置 。
2. 库的操作
- 查看数据库:使用 show databases; 语句查看当前已有数据库,SQL 语句以分号结束,字符不区分大小写,执行时间短表示操作迅速 。系统库记录 MySQL 自身信息和配置项,若出现问题可能影响数据库启动 。
- 创建数据库:语法为 CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name [create_option] ... ,可指定字符集编码、校验规则、是否加密等 。如 create database javal15_116; ,若数据库不存在则创建 。还展示了创建数据库时语法错误及警告信息的处理 。
3. 字符集编码和校验(排序)规则
- 查看字符集编码:用 show charset; 语句查看,MySQL 8.0 默认字符集编码为 utf8mb4 ,MySQL 5.7 为 latin1 。不同字符集编码存储字符的方式和占用字节数不同,如 utf8mb4 最长用 4 个字节表示一个字符,中文通常占 3 个字节 。
- 不同规则影响:介绍了不同排序规则,如 utf8mb4_0900_ai_ci 等,涉及口音、大小写敏感等特性,创建数据库时可指定字符集和排序规则 。
三、SQL 语言简介
1. SQL 定义:SQL(Structured Query Language )即结构化查询语言,用于存取数据,查询、更新和管理关系数据库 。
2. SQL 分类
- DDL(数据定义语言):维护存储数据结构,如 create (创建)、 drop (删除)、 alter (修改) 。
- DML(数据操纵语言):对数据进行操作,像 insert (插入)、 delete (删除)、 update (更新)、 select (查询) 。
- DCL(数据控制语言):负责权限管理和事务处理,如 grant (授权)、 revoke (收回权限)、 commit (提交事务) 。
MySQL 架构
展示了 MySQL 架构,包括客户端和应用程序(如 MySQL Connectors、MySQL Shell ) ,涉及鉴权、解析优化等流程,强调处理数据的级别是核心,数据最终由文件系统保存 。