`
xly_971223
  • 浏览: 1273777 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

基于主键的一对一

    博客分类:
  • db
 
阅读更多
开始的设计是这样的

引用
digit_account(主表)
id  auto_crement
...
其他字段省略


引用
digit_account_prop(从表)
id  直接使用主表的id


从表引用主表的id,这样设计的问题是不能保证从表数据的存在
主表存在数据,从表未必存在,不能达到逻辑上的一对一

修改后
引用
其实很简单 --- 将id生成方做了个交换,
digit_account_prop.id作为auto_crement
而digit_account.id引用digit_account_prop.id


这样就解决了上面的问题:达到逻辑上一对一
主表数据存在,从表数据肯定存在
其实这样还是有问题的---从表数据存在,主表数据未必存在
但问题不大,因为多数情况下查询入口都是主表
1
1
分享到:
评论

相关推荐

    hibernate 双向一对一基于主键的关联映射

    在Java持久化框架Hibernate中,双向一对一(OneToOne)基于主键的关联映射是一种常见的对象关系映射(ORM)技术。这种映射方式允许两个实体类之间建立一对一的关联,且关联是通过主键来实现的。接下来,我们将深入...

    hibernate中基于主键的one2one

    这种基于主键的一对一关联有许多优点,例如简化数据模型,减少冗余数据,以及更有效地查询相关数据。但也有需要注意的地方,比如当两个表的主键是自增的,可能会因为并发插入导致主键冲突,这时需要特殊处理。 此外...

    Hibernate一对一主键关联映射(双向关联)

    一对一关联分为两种:基于主键的关联(Primary Key Association)和基于外键的关联(Foreign Key Association)。在基于主键的关联中,两个实体共享相同的主键,而在基于外键的关联中,一方实体的主键作为另一方实体...

    基于jpa的一对一的主键测试.docx

    基于 JPA 的一对一主键测试 本文档介绍了如何使用 Java 持久层 API(JPA)实现一对一的主键测试。该测试涵盖了人员表和身份证表之间的一对一关系,使用了 JPA 的注解来定义实体类和关系。 实体类设计 在该测试中...

    hibernate一对一主键关联映射(双项关联)

    本篇主要探讨的是基于主键(Primary Key)的双向关联映射,这在实际项目中非常常见,比如用户与账户、员工与职务等场景。 一、主键关联映射概述 主键关联映射是通过将两个实体类的主键相互引用来实现一对一关系的。...

    Hibernate教程06_关系映射之一对一单向主键关联

    这个文件名可能代表了一个基于Struts2、Spring和Hibernate(S2SH)的项目,其中"relation03"可能表示关系映射的第三部分,而"one2one_uni_pk"直指一对一单向主键关联的具体实现。 **详细知识点:** 1. **一对一...

    67 基于主键的索引是如何设计的,以及如何根据主键索引查询?l.pdf

    基于主键的索引是一种特殊的索引类型,其设计和查询原理对数据库性能有着至关重要的影响。接下来我们将深入探讨基于主键的索引设计以及如何利用主键索引进行高效的数据查询。 首先,理解索引设计前的基础概念是非常...

    hibernate一对一的两种实现方式

    本篇文章将详细探讨Hibernate中一对一关联的两种实现方式:基于主键关联和基于外键关联,并通过源码分析及实际应用示例来阐述它们的工作原理和配置细节。 一、基于主键关联 1.1 基本概念 基于主键关联是指两个实体...

    ssh多主键插入

    本文将围绕“ssh多主键插入”这一主题,深入探讨如何在Struts、Spring和Hibernate(SSH框架)中实现对具有多主键结构的数据表进行插入操作。我们将基于提供的代码片段,详细解析实现过程中的关键步骤和技术要点。 #...

    datagridview设置行的主键

    为了唯一标识每一条记录,在数据库设计中通常会为表定义一个或多个主键字段。在DataGridView中,虽然没有直接的“主键”概念,但我们可以通过设置某个列作为唯一标识符来达到类似的效果。这样做的好处是: - 在进行...

    使用ODI处理没有主键的表全攻略

    在数据集成和ETL(提取、转换、加载)过程中,Oracle Data Integrator (ODI) 是一个强大的工具,但在处理没有主键的表时,ODI面临一些挑战。主键是数据库中用于唯一标识记录的关键字段,但在某些业务系统中,如...

    hibernate 双向一对一基于外键的关联映射

    在本案例中,我们将探讨如何在Hibernate中实现基于外键的双向一对一关联映射。 首先,我们来看一下双向一对一关联的基本概念。双向一对一关联意味着两个实体类A和B,它们之间存在一对一的关系,并且A能访问B,B也能...

    hibernate的主键生成策略

    以下是对Hibernate主键生成策略的详细说明: 1. **assigned**: 这种策略要求用户在调用`save()`方法之前手动设置主键值。Hibernate不参与主键的生成,这意味着主键生成完全由应用控制,可以与数据库无关。这种...

    sqlserver无主键表的同步方案1

    为了解决这个问题,开发者创建了一个自定义的脚本,该脚本基于SSIS的逻辑,但针对无主键表进行了优化。这个脚本的工作原理是对源表和目标表进行比较,识别出列的增减,并根据这些差异执行相应的DML操作(插入、更新...

    Mybatis实现一对一,一对多数据插入数据实验报告.docx

    - **建表原则**:一对一关系可以通过两种方式实现:在任意一方添加一个外键并设置唯一约束,或者通过主键对主键的方式。在本实验中,选择了第一种方式,即在一方添加一个外键,并设置唯一约束。 - **实体类设计**...

    hibernate主键生成策略

    在SSH(Spring、Struts、Hibernate)架构中,Hibernate作为持久层框架,主键生成策略的正确选择对系统的稳定性和可扩展性有直接影响。 1. **assigned**策略: 这种策略要求开发者在调用`save()`方法之前手动设置主...

    Hibernate 一对一关联查询.docx

    本文将深入探讨基于外键的一对一关联查询,并通过具体的代码示例进行解析。 ### 1. 基于外键的一对一关联 在一对一关联中,外键方式是指在一个实体类中引用另一个实体类的主键作为外键。这种方式下,关联关系的...

Global site tag (gtag.js) - Google Analytics