重蔚自留地php学习第三十七天——mysql数据库范式的总结

关系:一对多,多对一,多对多,一对一

范式Normal Format

第一范式:原子性,字段不可再分割

第二范式:取消部分依赖,不使用复合主键,通常设计时使用逻辑主键

第三范式:取消传递依赖,将不同的实体创建不同表,需要使用实体关系的时候,使用对应的主键。

为了提高效率,会在设计数据表的时候刻意增加适当的数据冗余。逆规范化(效率与磁盘空间的对抗)。

外键foreign key

创建外键

创建表:foreign key(字段) references 表名(字段)

修改表:alter table 表名 add constraint 外键名 foreign key (字段) references 表名(字段)

外键约束:

子表不能插入父表不存在的数据

父表不能删除子表已经有指向的数据

外键约束模式

严格模式:restrict(默认的)

置空模式:set null

级联模式:cascade

foreign key(字段) references 表名(字段) on update 模式[cascade] on delete 模式[set null]

删除外键:alter table 表名 drop foreign key 外键名

高级数据操作

增加:蠕虫复制,主键重复(on duplicate key,replace)

删除:搭配order by和limit,truncate(充值表)

修改:搭配order by和limit

查询:select [select选项] 字段列表/表达式 [from子句] [where子句] [group by子句] [having 子句] [order by子句] [limit 子句]

字段和表名使用别名

where子句:运算结果通常是一个布尔结果,比较运算符和逻辑运算符

group by子句:分组统计

count:统计记录数,统计不为空的字段

max

min

avg

sum

多分组:group by 字段列表

回溯统计

本文来自投稿,不代表重蔚自留地立场,如若转载,请注明出处https://www.cwhello.com/10370.html

如有侵犯您的合法权益请发邮件951076433@qq.com联系删除

(0)
重蔚的头像重蔚管理团队
上一篇 2018年10月16日 00:00
下一篇 2018年10月17日 09:49

相关推荐

  • 聊聊教程宝塔面板一键安装配置详解视频。

    本视频教程详细讲解了如何使用宝塔面板一键安装配置,方便用户快速搭建网站。 教程宝塔面板一键安装配置详解 简介 宝塔面板是一款服务器管理工具,支持Linux和Windows系统,它可以帮助用户轻松管理服务器,包括网站…

    2024年7月8日
    03
  • 关于MySQL的30条优化技巧

     1. 应尽量避免在 where 子句中使用!=或<>操作符,否则引擎将放弃使用索引而进行全表扫描。  2. 对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。  3. 应尽量…

    2023年5月6日
    01
  • PHP实现MySQL主从复制自动切换的方法。

    在现代化的应用架构中,数据库是至关重要的一环,对于高负载和高可用性应用,MySQL主从复制架构是广泛采用的一种解决方案。但是在MySQL主从复制模型下,主节点发生故障后需要手动切换从节点为主节点,这不仅会造成…

    2023年5月21日
    015
  • 小编分享香港虚拟空间哪个好。

    香港是亚洲的网络中心,虚拟主机的选择众多。硅云虚拟主机以带宽为限而不限月流量,配备CN2、BGP网络,快速有效覆盖全球,非常适合客户遍及全球的企业网站。DMIT是一家专门经营香港主机的主机商,其VPS使用CN2 GIA…

    2024年7月10日
    02
  • 说说discuz搭建教程。

    Discuz是一款十分流行的搭建论坛的工具,占有很大的市场份额,你无需会代码即可搭建一个专属论坛,并且Discuz也拥有许多插件和应用可以丰富你的论坛功能。 Discuz3.4怎么搭建站点 Discuz!是一款功能强大的开源社区…

    2024年7月8日
    03
  • 数据库约束定义及分类

    约束 约束定义及分类: Constraint,对数据库中的数据做要求,以保证设计出来的数据库及其中的数据真实可用。 约束分为 行完整性约束(三范式) 列完整性约束。 主键约束 Alter table 表名 add constraint PK_表名_…

    2017年10月23日
    0317
  • mysql导入sql文件的步骤是什么。

    1. 打开MySQL命令行工具;,2. 使用USE语句选择数据库;,3. 执行SOURCE命令导入SQL文件。 MySQL导入SQL文件的步骤如下: 1、准备工作 在开始导入SQL文件之前,需要确保已经安装了MySQL数据库,并且知道数据库的用…

    2024年7月27日
    02
  • 经验分享双线虚拟主机租用怎么搭建。

    双线虚拟主机,即在不同地理位置的两个数据中心间进行数据同步的虚拟主机。由于国内两大网络公司电信和网通之间的互联互通问题,导致电信用户访问网通网站或网通用户访问电信网站很慢,因此有了双线虚拟主机的诞生…

    2024年7月15日
    01

联系我们

QQ:951076433

在线咨询:点击这里给我发消息邮件:951076433@qq.com工作时间:周一至周五,9:30-18:30,节假日休息