数据库简介
- 保存有组织的数据的容器(通常是一个文件或一组文件)。
- 结构
- 表
- 某种特定类型数据的结构化清单
- 数据库中的每个表都有一个名字,用来标识自己。此名字是唯一的,这表示数据库中没有其他表具有相同的名字。
- 同一个数据库中只能出现一个表名,不同的数据库可以使用想同的表名
- 模式
- 关于数据库和表的布局及特性的信息。
- 列和数据类型
- 列
- 表中的一个字段。所有表都是由一个或多个列组成的。
- 正确地将数据分解为多个列极为重要
- 数据类型
- 所容许的数据的类型。每个表列都有相应的数据类型,它限制(或容许)该列中存储的数据
- 列
- 行
- 表中的数据是按行存储的,所保存的每个记录存储在自己的行内。如果将表想象为网格,网格中垂直的列为表列,水平行为表行
- 表行数表示记录的总数
- 主键(primary key)
- 表中每一行都应该有可以唯一标识自己的一列(或一组列)
- 唯一标识表中每行的这个列(或这组列)称为主键
- 主键规则
- 任意两行都不具有相同的主键值
- 每个行必须具有一个主键值(主键不允许为 NULL 值)
- 主键习惯
- 不更新主键列中的值
- 不重用主键列中的值
- 不在主键列中使用可能会更改的值
- SQL
- SQL(发音为字母S-Q-L或sequel)是结构化查询语言(Structured Query Language)的缩写。 SQL是一种专门用来与数据库通信的语言。
- 优点
- SQL不是某个特定数据库供应商专有的语言。几乎所有重要的DBMS都支持SQL
- SQL简单易学
- SQL尽管看上去很简单,但它实际上是一种强有力的语言,灵活使用其语言元素,可以进行非常复杂和高级的数据库操作
- SQL不是一种专利语言,而且存在一个标准委员会,他们试图定义可供所有DBMS使用的SQL语法,但事实上任意两个DBMS实现的SQL都不完全相同。
- 表
MySQL 简介
- MySQL是一种DBMS,即它是一种数据库软件
- 使用 MySQL 的原因
- 成本——MySQL是开放源代码的,一般可以免费使用
- 性能——MySQL执行很快
- 可信赖——某些非常重要和声望很高的公司、站点使用MySQL,这些公司和站点都用MySQL来处理自己的重要数据。
- 简单——MySQL很容易安装和使用
- 客户机-服务器软件
- DBMS可分为两类:一类为基于共享文件系统的DBMS,另一类为基
于客户机—服务器的DBMS。- 共享文件系统的DBMS
- 前者用于桌面用途,通常不用于高端或更关键的应用
- 客户机—服务器的数据库(MySQL、Oracle、SQL Server)
- 客户机—服务器应用分为两个不同的部分
- 服务器
- 服务器部分是负责所有数据访问和处理的一个软件。这个软件运行在称为数据库服务器的计算机上
- 与数据文件打交道的只有服务器软件,关于数据、数据添加、删除和数据更新的所有请求都由服务器软件完成。
- 客户机
- 客户机是与用户打交道的软件
- 请求或更改来自运行客户机软件的计算机
- 流程
- 请求一个按字母顺序列出的产品表,则客户机软件通过网络提交该请求给服务器软件。服务器软件处理这个请求,根据需要过滤、丢弃和排序数据;然后把结果送回到你的客户机软件。
- 服务器
- 客户机—服务器应用分为两个不同的部分
- 共享文件系统的DBMS
- DBMS可分为两类:一类为基于共享文件系统的DBMS,另一类为基
- MySQL 版本
- 当前版本为 8 或者 5.7
- 版本主要更改
- 4——InnoDB引擎,增加事务处理、并、改进全文本搜索等的支持
- 4.1——对函数库、子查询、集成帮助等的重要增加
- 5——存储过程、触发器、游标、视图等
MySQL 工具
- MySQL是一个客户机—服务器DBMS,因此,为了使用MySQL,需要有一个客户机,即你需要用来与MySQL打交道(给MySQL提供要执行的命令)的一个应用
MySQL 命令行实用程序
- 每个MySQL安装都有一个名为mysql的简单命令行实用程序
在操作系统命令提示符下输入mysql将出现提示
mysql -u {用户名} -p # 下一行就会提示输入密码

命令输入在mysql>之后
- 命令用;或\g结束,换句话说,仅按Enter不执行命令
- 输入help或\h获得帮助,也可以输入更多的文本获得特定命令的帮助(如,输入help select 获得使用 SELECT 语句的帮助)
- 输入 quit 或 exit 退出命令行实用程序
- MySQL Administrator
- MySQL Administrator( MySQL管理器)是一个图形交互客户机,用来简化MySQL服务器的管理
- MySQL Administrator提示输入服务器和登录信息(并且允许你保存服务器定义供以后选择),然后显示允许选择不同视图的图标
- Server Information(服务器信息)显示客户机和被连接的服务器的状态和版本信息
- Service Control(服务控制)允许停止和启动MySQL以及指定服务器特性
- User Administration(用户管理)用来定义MySQL用户、登录和权限
- Catalogs(目录)列出可用的数据库并允许创建数据库和表
- MySQL Query Browser
- MySQL Query Browser为一个图形交互客户机,用来编写和执行MySQL命令
