## 数据库的概念 **数据库**:database(DB),是一种存储数据的仓库。具有如下特性: - 数据库是根据数据结构组织、存储和管理数据。 - 数据库能够长期、高效的管理和存储数据。 - 数据库的目的就是能够存储(写)和提供(读)数据。 ## 数据库分类 数据库分为两类: - **关系型数据库**:把复杂的数据结构归结为简单的二元关系,即二维表格形式(二维表)。注重数据存储的持久性。 - **非关系型数据库**:没有具体模型的数据结构。英文简称 NoSQL(Not Only SQL ),意为"不仅仅是SQL"。注重数据读取的效率。 我们具体来看看。 ### 1、关系型数据库 **关系型数据库**:把复杂的数据结构归结为简单的二元关系,即二维表格形式(二维表)。 关系型数据库有四层结构: - 数据库管理系统(DBMS):DataBase Management System。 - 数据库(DB):数据存储的管理者。 - 数据表(Table):数据关系管理者。 - 数据字段(Field):实际数据存储者。 常见的关系型数据库产品: - 大型:Oracle - 中型:MySQL、SQL Server - 小型:Sybase、Access ### 2、非关系型数据库 **非关系型数据库**:没有具体模型的数据结构。英文简称 NoSQL(Not Only SQL ),意为"不仅仅是SQL"。 常见的非关系型数据库产品:MongoDB、Redis、Memcached。 ## SQL 的介绍 **SQL**:全称 **Structured Query Language**,译为**结构化查询语言**。 **SQL**:是一种针对关系型数据库的标准化编程语言,能够实现用户数据库的查询和程序设计。 通俗来讲,**SQL 是关系型数据库的操作指令**。 根据操作类型不同,SQL 可分为几类: * DQL:Data Query Language,数据查询语言,用于查询和检索数据 * DML:Data Manipulation Language,数据操作语言,用于数据的写操作(增删改) * DDL:Data Definition Language,数据定义语言,用于创建数据结构 * DCL:Data Control Language,数据控制语言,用于用户权限管理 * TPL:Transaction Process Language,事务处理语言,辅助DML进行事务操作(因此也归属于DML) 补充: - SQL 虽然是编程语言,但通常只用来进行数据管理,逻辑部分交给其他编程语言。 - SQL 是针对关系型数据库的**通用语言**,所有关系型数据库都是基于SQL进行数据操作;而不同的数据库产品,在 SQL 操作指令上略有差异。 ## MySQL 的介绍 ### MySQL 数据库介绍 MySQL 是很有名的 关系型数据库产品,由瑞典MySQL AB 公司开发,现在属于 Oracle 旗下产品。 MySQL 在 2008 年被 Sun 公司以10亿美金所收购,而 Sun 公司在2009年被 Oracle 甲骨文公司收购。 MySQL 开源免费。 ### MySQL 访问原理 MySQL是一种C/S结构的软件,因此我们需要安装 MySQL 的客户端来访问远程的服务端。也就是说,数据是存放在服务器上的,客户端通过执行 sql 指令来操作服务端的数据。 具体步骤是: (1)客户端通过 主机(host) + 端口号(port) 服务端。 (2)输入 username 和 password 验证身份。 (3)客户端和服务端连接成功,通过 sql 指令开始操作数据库。