关系型数据库都使用的是同一个模型: E-R关系模型(设计的过程)
数据可解决的问题:持久化存储,优化读写,保证数据的有效性
当前使用的数据库,主要分为两类:
1.文档型 ,如sqlite,就是一个文件。通过对文件的复制完成数据库的复制
2.服务型,如mysql,postgre 数据存储在一个物理文件中,但是需要使用终端以tcp/ip协议链接,进行数据库的读写
E-R模型
当前物理的数据库都是按照E-R模型进行设计的
E表示 entry 实体(实体包含属性)
R表示relationship 关系
一个实体转换为数据中的一个表
关系描述两个实体之间的对应规则,包括
- 一对一
- 一对多
- 多对多
关系转换为数据中表中的一个列,在关系型数据库中的一行就是一个对象
数据库用来存放表,表的设计有实体得来(E),表中存放的每一行就是一个实体的对象
三范式
- 经过研究和对使用中问题的总结,对于设计数据库提出了一些规范,这些规范被称为范式
- 第一范式(1NF):列不可拆分(有实际问题使用)
- 第二范式(2NF):唯一标识(通过一个标识可以找到表中的一个对象)
- 第三范式(3NF):引用主键(引用关系)
- 说明:后一个范式,都是在前一个范式的基础上建立的
--------------------------------------------------------------------------------------------------------------------------------------
安装
sudo apt-get install mysql-server mysql-client
启动
启动
service mysql start
停止
service mysql stop
重启
service mysql restart
允许远程链接
'''待写'''
数据完整性
- 一个数据库就是一个完整的业务单元,可以包含多张表,数据被存储在表中
- 在表中为了更加准确的存储数据,保证数据的正确有效,可以在创建表的时候,为表添加一些强制性的验证,包括数据字段的类型、约束
字段类型
- 在mysql中包含的数据类型很多,这里主要列出来常用的几种
- 数字:int,decimal ex:decimal(5,2) 一共有5位,小数有2位
- 字符串:char,varchar,text char/varchar 有限字符 char存的字符是固定的/