我必须为作业创建实体关系图 (ERD)。我正在使用 Crow\xe2\x80\x99s 脚符号的特定绘图工具执行此操作。然而有一件事我无法弄清楚:
\n\n目前,我通过超实体类型与其子类型(、等)之间的一对一关系来展示这一点。Product
Books
Papers
我正在研究一个 ERD,它表示Web 开发公司行为模型中实体之间的关系。在那里我有这样的实体:
到目前为止,我有这张图,但我知道它仍然存在重大问题,这只是一个起点:
主要概念
order-item
s 上生成service
s,组合形成与order
相关的invoice
。project
都有多个project-phase
s,每个都project-phase
与一个 相关order
。project-phase
都有多个task
s,每个都分配给一个developer
。project-phase
都有一个delivery
,将在相关order
s付款后交付invoice
。问题
has
和contains
完全一样的吗?如果不是,如何在他们之间选择关系?!什么措施?!对此有任何帮助,将不胜感激。
精制版图
考虑一个快餐店的类比会有所帮助:
背景
我试图确保我了解如何阅读 ERD(实体关系图)符号,以便我可以将其转换为自然语言解释。
我试图确保我可以解释一种将我在图中看到的内容转换为自然语言的方法。
让我们使用下图:(请不要太关注实际实体的正确性,它们仅用于我们的示例。)
自然语言句子示例
公司地址
这是谈论从公司到地址的关系的正确方式吗?
一个公司有一对多的地址。(运输、计费等)。
这表明公司必须至少有一个地址,对吗?
这与我在图表中的符号相符吗?
公司连接
每个公司都有零到多个连接。
那是对的吗?这就是我在公司方面阅读双杠的方式吗?
两个公司侧连接器有何不同?
两个公司侧连接器是否表示任何不同?
你能解释一下吗?
自然语言翻译的一般帮助?
您是否有一种逻辑方法可以提供检查每个关系并转换为自然语言的步骤?
例如,使用公司到连接。
我从哪里开始阅读?
我如何记住(或解释)Connection 上的乌鸦脚表示公司拥有的 Connection 数量,反之亦然?
谢谢
我创建了如下所示的实体关系图(ERD)(为简洁起见,每个单独的气泡形框都描绘了多个属性):
考虑到这样的 ERD,我必须将其中描述的每个实体类型或关联实体类型转换为与其对应的属性名称的关系,但我遇到了一些问题。
我通常表示一个关系如下:
X = (a, b, c)
* *如果X
是名称的的关系和a
,b
和c
是名字它的属性。
然后,在我正在研究的业务领域中,aCourse
依赖于零对多 (0:M) 其他Courses
(如 ERD 中所示)。这意味着 aCourse
应该以某种方式连接到Courses
它所依赖的。
那么,我如何将这种情况表示为(数学)关系?
选项1
我尝试了以下方法:
Course = (course_number, course_name, course_dependencies?)
选项 2
我认为可以用另一种方式描述所需的方面,例如:
Depends = (course_name)
进而
Course = (course_number, course_name, depends) …
schema erd database-design relational-theory database-diagrams
这是我第一次为将在 MySQL 上构建的数据库制作实体关系图 (ERD)。相关的业务领域是设备问题管理。
在此之前,我永远不会在表之间创建关系,我只会在 MySQLAdmin 中创建表并在我的 PHP/MySQL 代码中进行链接。
我应该建立这些关系有什么理由吗?
我已经阅读了很多关于数据库设计和关系的信息。
我想确保我创建的 ERD 是正确的;我犯错了吗?或者有更好的方法来做到这一点?
正在考虑的 ERD
我的数据库应该做什么:
有人可以帮助我了解如何模拟以下情况:
有一个名为的超类(或超类型)PRODUCTS
,它具有名为和的子类(或子类型)。FOOD
SHOES
存在另一个命名为 的超类CUSTOMERS
,子类命名为SHOE STORE
和GROCERY STORE
。
我需要代表一些规则来表明:
FOOD
只能送到GROCERY STORES
.SHOES
可以专门分发给SHOE STORES
.我试过下面显示的两个图表:
顶图
我真的不喜欢 (a) 相同实体类型的重复,即ORDERS
,和 (b) 围绕它的关系。
底图
我很确定这不是正确的符号。我是否应该在超类级别创建关系并注意限制将在编程级别实现?
我正在尝试保存数据库图表,但出现错误。我怎样才能解决这个问题?
无法将值 NULL 插入列“diagram_id”、表
“SOFT.dbo.sysdiagrams”;列不允许空值。插入失败。
该语句已终止。
'sp_creatediagram' 过程试图返回 NULL 状态,这是不允许的。
将改为返回状态 0。(.Net SqlClient 数据提供程序)
是否可以使用 T-SQL 编写数据库图表的创建脚本?
如果不是,当您使用数据库图表设计器保存/编辑图表时(它是使用 PowerShell 还是其他某种语言来保存和加载这些类型的对象),它在做什么?
我问是因为我希望自动创建数据库图表。我有一个我的开发人员编写的工具(在 C# 中),它根据它对我们供应商数据所做的一些 Web 服务调用的响应自动创建表及其外键关系。
我对数据库可视化真的很陌生。我正在创建我的数据库的 ER 图。我正在使用 MySQL Workbench 6.3(社区版)。我正在使用默认样式创建图表。样式如下所示:
是否可以将样式更改为如下图所示?
如果是,我该怎么做?
或者,如果您有另一个数据库设计人员可以创建类似于第二种样式的图表,那会有所帮助。
谢谢!