MyBatis02

#千锋#

一、数据库的三大范式

第一范式(1NF):数据表中的每一列(每个字段)必须是不可拆分的最小单元,也就是确保每一列的原子性;

如:一张表里的地址、电话。

第二范式(2NF):满足1NF后,要求表中的所有列,都必须依赖于主键,而不能有任何一列与主键没有关系,也就是说一个表只描述一件事情;

如:订单表只描述订单相关的信息,所以所有字段都必须与订单id相关;产品表只描述产品相关的信息,所以所有字段都必须与产品id相关;因此不能在一张表中同时出现订单信息与产品信息;

第三范式(3NF):必须先满足第二范式(2NF),要求:表中的每一列只与主键直接相关而不是间接相关,(表中的每一列只能依赖于主键);

例如:订单表中需要有客户相关信息,在分离出客户表之后,订单表中只需要有一个用户id即可,而不能有其他的客户信息。因为其他的客户信息直接关联于用户id,而不是直接与订单id直接相关。

二、mybatis的联合查询结果集处理

在实体类中的外键放入另一个实体类对象,在xml中的结果集中配置resultMap并指向resultMap标签中的id,

配置中配置id主属性,其他属性如果实体类的名称和字段的名称相同可以省略,配置association 配置属性对应实体类中的名字,列对应数据库字段,select对应配置的另一个查询映射的namespace加id。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 设计关系数据库时,遵从不同的规范要求,设计出合理的关系型数据库,这些不同的规范要求被称为不同的范式,各种范式呈递次...
    海边的蜗牛ng阅读 2,286评论 0 2
  • 一. Java基础部分.................................................
    wy_sure阅读 3,835评论 0 11
  • 文/Bruce.Liu1 1.建模简介 范式:英文名称是 Normal Form,它是英国人 E.F.Codd(埃...
    BruceLiu1阅读 5,660评论 0 9
  • 数据库开发规范1. 数据库命名规范前缀对象前缀命名: 前缀命名一般用小写表的前缀: 业务模块组名前缀存储过程前缀:...
    PowerYangSoft阅读 2,538评论 0 8
  • 又上稿一篇,600多字,又赚了六十块钱吧。 只是,如今看到上稿,已完全无昨日之兴奋。 不以物喜,不以己悲。 开始总...
    考拉小巫Daniel阅读 296评论 0 4