标签: entity-relationship

数据库设计:支持抽象或外键约束?

假设我们有这种情况:

Artist ==< Album ==< Track
//ie, One Artist can have many albums, and one album can have many tracks
Run Code Online (Sandbox Code Playgroud)

在这种情况下,所有3个实体都具有基本相同的字段:

  • ID
  • 名称
  • 与相应孩子的一对多关系的外国人(艺术家到专辑和专辑跟踪

提供的解决方案的典型解决方案是三个表,具有相同的字段(ArtistID,AlbumID等...)和一对多关系字段中的外键约束.

但是,在这种情况下,我们可以采用一种继承形式来避免重复同一个领域吗?我说的是那种:

Table: EntityType(EntityTypeID, EntityName)
       This table would hold 3 entities (1. Artist, 2. Album, 3. Track)

Table: Entities(EntityID, Name, RelField, EntityTypeID)
       This table will hold the name of the entity (like the name of 
       an artist for example), the one-many field (foreign-key
       of EntityID) and EntityTypeID holding 1 for Artist, 2 for Album 
       and so …
Run Code Online (Sandbox Code Playgroud)

language-agnostic oop database-design entity-relationship

1
推荐指数
1
解决办法
241
查看次数

CakePHP连接两个表之间的模型,两次

我有一个问题,关于如何在两个不同的问候中彼此加入时建立两个模型之间的关系.

我将举例说明我遇到的问题:

Users (id, name)
Messages (id, message, from_user_id, to_user_id)
Run Code Online (Sandbox Code Playgroud)

(在我的情况下,它不是用户也不是消息,但希望以更简单的方式说明问题)

用户可以相互发送消息,每封消息都有一个发送消息的用户和一个将接收消息的用户.我试图找出模型关系:

class User extends AppModel {
    var $hasMany = array("Message");
}

class Message extends AppModel {
    var $belongsTo = array("User");
}
Run Code Online (Sandbox Code Playgroud)

我也不确定如何在数据库中命名字段,因此CakePHP将正确地获取关系.

php entity-relationship cakephp cakephp-model

1
推荐指数
1
解决办法
3155
查看次数

可以同时执行UML和ER图的工具

我已经批准购买一个工具,可以帮助我的团队的程序员编写更好的代码.

我的大多数团队成员要么做UML(.NET开发人员),要么他们做ER(数据库开发人员)

你能为我推荐一款可以同时使用这两种图表的工具吗?

请不要推荐Visio,因为我的团队已对其进行了评估,并且每个人都不喜欢它作为UML或ER图表工具.

diagram uml entity-relationship

1
推荐指数
1
解决办法
5130
查看次数

EER建模中的双圆和双正方形是什么意思?

我试图了解一些 EER 模型,但我无法弄清楚普通圆/正方形/菱形和双圆/正方形/菱形之间的区别是什么。

原作者想告诉我什么?

entity-relationship

1
推荐指数
1
解决办法
1万
查看次数

核心数据`deleteObject:`问题!

我在核心数据中有以下实体,如下图所示. 核心数据模型

所有关系的删除规则是级联的.

问题:当我删除级别2中的任何一个实体对象并执行[context save:&error];表Entity1中的所有其他对象时,由于无法再读取Entity1对象而导致数据错误并且应用程序崩溃,从而产生EXC_BAD_ACCESS错误.

我正在使用此代码

for(Entity1 *entity in listOfEntitys)
{
    if(entity.Relation1)
        [context deleteObject:entity.Relation1];

    if(entity.Relation2)
        [context deleteObject:entity.Relation2];

    if(entity.Relation3)
        [context deleteObject:entity.Relation3];
}
[context save:&error];
Run Code Online (Sandbox Code Playgroud)

它不像我从未从核心数据中删除任何对象,但这是问题发生的唯一地方.谁能帮忙.

谢谢.
PS.我在SO上看过其他问题,但没有一个像我一样.

编辑:

我的问题是,当我尝试从级别2删除任何一个对象时,实体1中的所有对象都会出现数据错误.这样的事情.

Printing description of listOfEntitys: 
(
    "<Entity1: 0x4dc3d80> (entity: Entity1; id: 0x4dc2d60 <x-coredata://DF11191D-0BE9-4A63-955D-0A43153290A4/Entity1/p5> ; data: <fault>)",
    "<Entity1: 0x5b06ea0> (entity: Entity1; id: 0x5b077d0 <x-coredata://DF11191D-0BE9-4A63-955D-0A43153290A4/Entity1/p6> ; data: <fault>)",
    "<Entity1: 0x4dc2cf0> (entity: Entity1; id: 0x4dc2df0 <x-coredata://DF11191D-0BE9-4A63-955D-0A43153290A4/Entity1/p7> ; data: <fault>)",
    "<Entity1: 0x4dc2b80> (entity: Entity1; id: 0x4dc3640 <x-coredata://DF11191D-0BE9-4A63-955D-0A43153290A4/Entity1/p8> ; data: <fault>)" 
)
Run Code Online (Sandbox Code Playgroud)

iphone entity-relationship core-data objective-c ios

1
推荐指数
1
解决办法
1992
查看次数

MySQL InnoDB表添加外键错误:150

好吧,我有两张桌子

publica_evento_grupo

Field | Type | Null | Key | Default | Extra
id_evento_grupo int(10) unsigned    NO  PRI     auto_increment
id_evento       int(8)  unsigned    NO  MUL     
id_grupo        int(8)  unsigned    NO  MUL     
identificacao   varchar(55)         NO  
Run Code Online (Sandbox Code Playgroud)

publica_identificacao_publicacao

Field | Type | Null | Key | Default | Extra
id_evento       int(8) unsigned NO  PRI     
identificacao   varchar(55)     NO  PRI     
Run Code Online (Sandbox Code Playgroud)

publica_evento_grupo.id_eventoin是第三个名为publica_evento的表的外键,但也是表的列的外键publica_identificacao_publicacao.identificacao.问题是,我必须通过密钥创建将publica_evento_grupopublica_identificacao_publicacao相关的外键id_evento,但是当我尝试使用该列创建另一个FK时identificacao,它会给出下面的errno

 [Err] 1005 - Can't create table '#sql-1049_1980992' …
Run Code Online (Sandbox Code Playgroud)

mysql sql indexing entity-relationship foreign-key-relationship

1
推荐指数
1
解决办法
3857
查看次数

UML类图中的类是否总是转换为概念数据模型中的实体?

我目前正在为我的大学从事一个项目,一位老师告诉我,我认为UML类图中可能存在类(将其视为设计图),而在数据中却没有等效类,我是错的模型。然后他向我施加压力,要求我提供一个反例来证明我的观点,但我只是想不到一个。

我检查了几本有关UML的书,例如“学习UML 2.0”,“应用UML和模式”和UML 2的傻瓜书,但是我找不到有关在类图上出现哪些类的任何信息。我问他关于实现类的问题,但他告诉我,不应将它们包括在类图中。所以我很茫然。

发布之前,我还检查了以下问题:

UML概念图和ERD之间的区别?

从概念数据模型生成UML

如何在uml类图中将数据与函数关联

但是他们并没有真正解决我的问题。

感谢您的任何见解。

uml entity-relationship class-diagram data-modeling datamodel

1
推荐指数
1
解决办法
2884
查看次数

如何在ERD中显示包含外键的主键?

绘制 ER 图时,它们不包括实体类型中的外键。但是,某些实体类型的主键是由多个属性组成的,包括外键。指示一个属性(或一组属性)用作主键的标准方法是在 ER 图中给它们加下划线。 ER图中没有显示吗?我正在为 ER 图使用 UML 表示法。

uml entity-relationship key

1
推荐指数
1
解决办法
2万
查看次数

在没有复合键的情况下归一化到1NF

它经常声明要达到1nf,必须创建一个新实体,并且该实体必须有一个复合键.

LeadID | leadDate | Name | DOB | streetAddress | city | state | residenceType

如果我要规范化streetAddress, city, state, residenceType为一个新实体,那么我必须立即创建一个新的主键.我无法使用,LeadID因为这意味着没有线索就无法创建地址,这是不正确的.我不能使用,streetAddress因为街道不是好的候选人(5123 glowsville way st.n ave.根本不是一个好关键).

所以我不得不为这个新实体创建一个密钥.这好吗?

sql database database-design entity-relationship normalization

1
推荐指数
1
解决办法
1215
查看次数

从UML到ER图的抽象类。有可能吗 怎么样?

我有下面的带有抽象类的UML类图,以及从其扩展的子类。我想使用该类图制作一个ER图。

在此处输入图片说明

我的问题是如何在ER图中表示Abstract类?作为表?还是我应该忽略它?

谢谢。

mysql uml entity-relationship

1
推荐指数
1
解决办法
83
查看次数