数据库基础
1.1 为什么要使用数据库
持久化(Persistence):把数据保存到可掉电式存储设备中以供之后使用。持久化的大多数时候是将内存中的数据存储在数据库中,当然也可以存储在磁盘文件、XML数据文件中。 方便管理数据(例如:快速的检索等);
在iOS端App中的持久化方案:Plist文件、Preference、NSKeyedArchiver、SQLite、FMDB、CoreData。
1.3 关系数据库
关系型数据库,采用关系模型来组织数据,简单来说,关系模型指的就是二维表格模型。
类似于Excel工作表。非关系型数据库,可看成传统关系型数据库的功能阉割版本,基于键值对存储数据,通过减少很少用的功能,来提高性能。
关系型数据库设计规则:
遵循ER模型和三范式
- E entity 代表实体的意思 对应到数据库当中的一张表
- R relationship 代表关系的意思
三范式:1、列不能拆分 2、唯一标识 3、关系引用主键
具体体现: - 将数据放到表中,表再放到库中。
- 一个数据库中可以有多个表,每个表都有一个名字,用来标识自己。表名具有唯一性。
- 表具有一些特性,这些特性定义了数据在表中如何存储,类似java和python中 “类”的设计。
- 表由列组成,我们也称为字段。每个字段描述了它所含有的数据的意义,数据表的设计实际上就是对字段的设计。创建数据表时,为每个字段分配一个数据类型,定义它们的数据长度和字段名。每个字段类似java 或者python中的“实例属性”。
- 主键约束相当于唯一约束+非空约束的组合,主键约束列不允许重复,也不允许出现空值,如果是多列组合的主键约束,那么这些列都不允许为空值,并且组合的值不允许重复。
- 每个表有且最多只允许一个主键约束。
- MySQL的主键名总是PRIMARY,就算自己命名了主键约束名也没用。
- 同一个表可以有多个唯一约束。
- 唯一约束可以是某一个列的值唯一,也可以多个列组合值的唯一。
- MySQL会给唯一约束的列上默认创建一个唯一索引。
-
创建外键
- 一个表可以有多个外键,而且主表和从表可以是一张表
- 建表后创建外键
3.2.2 方式二:可视化工具
例如:Navicat Preminum、SQLyogEnt等工具。还有其他工具:mysqlfront、phpMyAdmin。我们推荐使用Navicat Preminum,前面已经教大家如何安装了。
点击“Navicat Preminum”启动程序。新建连接:
4.2 详细的数据类型如下表:
6 DDL操作数据库
6.1 创建数据库
6.1.1 创建数据库的几种方式
创建数据库
判断数据库是否已经存在,不存在则创建数据库
创建数据库并指定字符集
6.1.2 案例
6.2 查看数据库
6.3 修改数据库
6.3.1 修改数据库默认的字符集
6.4 删除数据库
6.5 使用数据库
6.5.1 查看正在使用的数据库
6.5.2 使用/切换数据库
6.5.3 案例
7 DDL操作表结构
上面我们主要讲的是通过终端进行数据库的操作,在实际开发中我们主要是借助工具(比如:Navicat),我们先通过Navicat创建moya数据库,方便后面进行表的相关操作。
7.2 查看表
7.2.1 查看某个数据库中的所有表
7.2.2 查看表结构
7.2.3 案例
7.5.3 唯一键Unique key,简称UK

如何删除外键约束/mark>
如何删除外键列上的索引要单独删除
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!