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

相关推荐

  • 说说db2建库的流程是怎么样的「db2建库命令」。

    在DB2数据库管理系统中,创建新数据库的过程可以大致分为以下几个步骤: 1. **规划和设计**:在开始建立数据库之前,首先需要对数据库进行规划和设计,这包括确定数据库的名称、数据表的结构(包括字段名、数据类型…

    2024年6月14日
    01
  • 我来分享租韩国服务器多少钱一个月。

    韩国服务器的优势 1、地理位置优越 韩国位于东亚的交通枢纽,与中国、日本、朝鲜等国家地理位置相近,网络连接速度快,延迟低,这对于电商网站来说,可以为用户提供更快速的访问体验。 2、带宽资源充足 韩国拥有丰…

    2024年7月22日
    02
  • 今日分享Netdata如何监控数据库性能。

    Netdata是一个开源的实时监控和分析工具,可以用于监控数据库性能,以下是使用Netdata监控数据库性能的详细步骤: (图片来源网络,侵删) 1、安装Netdata 首先需要在服务器上安装Netdata,可以通过以下命令安装: …

    2024年6月29日
    01
  • 小编教你mongodb创建数据库。

    在MongoDB中,创建数据库是非常直接和简单的,你只需要使用`use`命令后跟你想创建的数据库的名字,如果数据库已经存在,这个命令不会有任何效果,如果数据库不存在,MongoDB会创建一个新的数据库。 以下是具体的步…

    2024年6月19日
    00
  • 美国免费主机申请流程是什么。

    申请美国免费主机的流程主要包括以下几个步骤:用户需要注册或登录相应的主机账户。如果选择的是USA-IDC,那么在注册过程中需提供一些基本信息,这些信息将有助于申请到合适的测试机配置。完成注册后,可以联系客服…

    2024年7月14日
    02
  • 我来教你phporm。

    PHP ORM(Object-Relational Mapping,对象关系映射)是一种编程技术,它允许开发者用面向对象的方式操作数据库,通过使用 PHP ORM,开发者可以避免直接编写 SQL 语句,从而提高代码的可读性和可维护性,在本文中,我们…

    2024年6月20日
    03
  • 关于如何开启mongodb的http服务。

    开启MongoDB的HTTP服务需要修改配置文件,并使用命令行启动。 如何开启MongoDB的HTTP服务 MongoDB是一个开源的NoSQL数据库,它提供了灵活的数据模型和强大的查询语言,除了使用命令行界面和驱动程序进行交互外,Mon…

    2024年7月27日
    01
  • 聊聊MySQL表的分类详解不同类型的表。

    MySQL是一种关系型数据库管理系统,它使用表来存储数据,在MySQL中,表可以分为不同的类型,每种类型都有其特定的用途和限制,本文将对MySQL中的不同类型的表进行详细的分类和解释。 (图片来源网络,侵删) 1、基…

    2024年6月20日
    01

联系我们

QQ:951076433

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