2016-12-18 165 views
0

我只想和你们一起检查设置我的数据库的最佳方式是什么,因为我是正确设置关系的新手。数据库设计/关系

我计划具有以下设置:

数据库:MyCompany的 表:DocumentClassification

 
id | discipline | type1 | type2 
---|------------|-------|------ 
1 | A   |01  |00 
2 | A   |01  |01 
3 | B   |01  |00 

数据库:作业1 表:文件

 
id | title | doc_number | type_id 
---|-------|------------|-------- 
1 | Doc1 |00001  |3 
2 | Doc2 |00002  |1 
3 | Doc3 |00003  |3 

数据库:作业2 表:文件

 
id | title | doc_number | type_id 
---|-------|------------|-------- 
1 | Doc1 |00001  |2 
2 | Doc2 |00002  |3 
3 | Doc3 |00003  |1 

请注意,这些都是单独的数据库,但 “TYPE_ID” 列将查看“DocumentClassification”表中的“id”列(在另一个例子中) r数据库)来确定其文档类型。

我已经选择了不同的表中,我们可以有数百个就业机会与成千上万的文件几十英寸

我真的只是想检查,这是解决这个正确的方法是什么?

预先感谢您。

回答

0

拥有单独的表格或者没有单独的表格,只要他们完成您的要求,两个选项都可以。

如果你有单独的表格,那么你肯定需要有关于连接的信息和知识。

我认为这个ERD是完全没问题的。

+0

亚历克斯,谢谢你的回应。你不会在“文档”表中包含“纪律,类型1和类型2”作为列吗?你总是会使用一个id引用来避免重复信息的正确性? – squatman

+0

正确。但是这会使ERD扩大,从而使其更加复杂。我建议为类型创建新表,当且仅当类型大于或等于4或5.在你的ERD中,只有两个值00和01我不会为它建议新表。 :)不要忘记接受答案 –

+0

Alex,谢谢。我们目前有555种不同的文档类型。考虑到这一点,你会保持它作为一个单独的数据库和表?另外我目前还没有设置任何触发器来强制数据库之间的外键(我以前从未这样做过)是一个问题?对不起,只是另一个问题,你认为是因为每份工作都有一个单独的数据库的工作和文件数量是最好的方法吗?非常感谢你。 – squatman