数据库

表的关系

	1 一对一:
			一张表的一条记录 用户基础表 user_basic==用户信息表user_profile
	2 一对多:
			一张表中的记录对应另外一张表中的多条记录,用户基础表user_basic == 用户拉黑表user_blacklist
	3 多对多:
			一张表中(A)的一条记录能够对应另外一张表(B)中的多条记录,同时B表找中的一条记录也能对应A表中的多条记录,多对多的关系。

注意: 在数据库设计的时候,当两张表存在多对多关系时,要设计第三张表将两张表多对多关系转换成一对多的关系。

反范式

	概念:增加冗余数据或数据分组来提高数据库读性能的过程
	
	目的:满足业务逻辑需求,提高查询速度

三范式

特点:字段具有原子性,不可拆分依赖于全部主键,而非部分主键,只依赖于主键,非主键字段互不依赖。
目的:减少冗余字段和重复的数据

表的字段类

	int(3) 和int(6)区别:都可以显示6位以上的整数,但是当数字不足3位或6位时,int(3)会用0补齐,不占用空间,只影响显示的长度
	bigint(n):多使用在主键上
	tinyint(n):多用于逻辑删除字段,n表示显示几位长度
	char 和varchar区别:前者不可变,查寻效率高,容易造成存储浪费。如果位数不够,会按照空字符串补齐。后者可变,查询效率不如前者,写几位显示几位。

索引

	概念:索引可分为普通索引,唯一约束uniqu(不重复),联合索引(减少开销,提升效率)。
	好处:增加查询速度
	坏处:增加数据库存储空间,增删改查速度降低。

innodb

	特点:
		给mysql 提供了具有提交,回滚和崩溃恢复能力的事务安全存储引擎
		支持行级锁/表级锁
		并发访问时效率高(事务和行级锁的原因)
		数据恢复可使用事务日志(undo redo log), 恢复速度快
		支持外键约束
		插入/更新/主键查询快
		需要内存和硬盘多,相较耗费资源

MyiSAM

	特点:
		不支持事务
		不支持外键约束
		只支持表级锁
		批量插入/查询/count( )速度快
		简单, 适合小型项目/以批量插入和查询为主的系统(内部管理系统)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值