MySQL总结

数据的完整性

数据完整性,指保证用户输入的数据保存到数据库中是正确的,即数据库中的数据能正确反应实际情况。 
为了确保数据的完整性,一般在创建表时给表中添加约束,也可修改表的约束。

数据的完整性是指数据的可靠性和准确性,数据完整性类型一般分三种: 
1.实体完整性:通过唯一约束,主键约束或标识列属性来实现,如:PRIMARY KEY(主键约束)、UNIQUE 唯一值约束。 
2.域完整性:通过数据类型(如数值类型、日期类型、字符串类型等限制类型)、非空约束(NOT NULL)、默认值定义(DEFAULT)、CHECK检查(MySQL不支持check约束)来实现。 
3.引用完整性:又叫做参照完整性,通过外键约束(FOREIGN KEY)来实现。引用完整性保证键值在所有表中一致,不能引用不存在的值。

MySQL三范式

    1NF:数据具有原子性,不可再分(字段不可分)

    2NF:每行数据唯一性(有主键,非主键字段依赖主键)

    3NF:要求一个数据库表中不包含已在其它表中已包含的非主键字段。就是说,表的信息,如果能够被推导出来,就不应该单独的设计一个字段来存放(非主键字段不能相互依赖)

反三范式

  没有冗余的数据库未必是最好的数据库,有时为了提高运行效率,提高读性能,就必须降低范式标准,适当保留冗余数据。具体做法是: 在概念数据模型设计时遵守第三范式,降低范式标准的工作放到物理数据模型设计时考虑。降低范式就是增加字段,减少了查询时的关联,提高查询效率,因为在数据库的操作中查询的比例要远远大于DML的比例。但是反范式化一定要适度,并且在原本已满足三范式的基础上再做调整的。

 

DQL、DML、DDL、DCL https://www.cnblogs.com/study-s/p/5287529.html

 

SQL语句执行顺序

https://www.cnblogs.com/yyjie/p/7788428.html

开始 -> FROM子句 -> WHERE子句 -> GROUP BY子句 -> HAVING子句 -> ORDER BY子句 -> SELECT子句 -> LIMIT子句 ->最终结果 
每个子句执行后都会产生一个中间结果,供接下来的子句使用,如果不存在某个子句,就跳过 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值