重蔚自留地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

相关推荐

  • MySQL大表优化方案之升级硬件

    升级硬件 Scale up,这个不多说了,根据MySQL是CPU密集型还是I/O密集型,通过提升CPU和内存、使用SSD,都能显著提升MySQL性能 读写分离 也是目前常用的优化,从库读主库写,一般不要采用双主或多主引入很多复杂性,…

    2018年3月10日
    0515
  • 分享轻量级服务器租用如何维护管理。

    以下是一些关于轻量级服务器租用维护管理的方法:,,1. 进行默认设置和错误页面处理。在租用轻量级服务器后,首先要进行基础设置,确保服务器的默认配置符合网站需求。特别是要注意搜索引擎抓取的设置,避免将网站…

    2024年7月17日
    03
  • 科讯调用栏目里文章sql标签怎么写的。

    在科讯中,我们可以通过编写SQL语句来调用栏目里的文章,以下是一些基本的步骤和示例: 1. 我们需要连接到科讯的数据库,这通常需要数据库的地址、用户名、密码以及可能的端口号,如果我们使用的是MySQL数据库,我…

    2024年6月28日
    00
  • 分享mysql怎么卸载干净。

    MySQL是一种广泛使用的开源关系型数据库管理系统,它可以帮助用户存储、管理和检索数据,有时候用户可能需要卸载MySQL以释放磁盘空间或进行其他系统维护操作,本文将介绍如何在不同操作系统上卸载MySQL并确保彻底清…

    2024年6月20日
    02
  • 教你mysql存储地图坐标。

    随着地理信息系统(GIS)的发展,三维坐标数据在各个领域的应用越来越广泛,MySQL作为一种关系型数据库管理系统,具有高性能、高可靠性和易扩展性等优点,已经成为许多企业和开发者的首选数据库,本文将对MySQL中三…

    2024年6月20日
    01
  • 关于如何建立数据库。

    建立数据库的过程可以根据不同的需求和数据库类型有所变化。如果你使用的是Access,你可以先创建一个空数据库,然后导入已有的Excel数据,或者新建一个表并定义字段名,如编号、姓名、性别等。接着,用SQL语句或查…

    2024年7月16日
    05
  • 经验分享mysql中怎么用触发器限制删除行数和字符。

    在MySQL中,可以使用触发器来限制删除行数和字符。创建一个触发器,然后在触发器中使用SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = '删除操作被拒绝';语句来阻止删除操作。可以在触发器中添加条件来限制删除的行数…

    2024年7月11日
    04
  • PHP实现MySQL主从复制自动切换的方法。

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

    2023年5月21日
    015

联系我们

QQ:951076433

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