具有各种属性的相同项目的数据库设计

问题描述 投票:0回答:1

我只是进入数据库的设计和结构。我现在面临一个问题。假设我要有一个票证数据库,票证有以下三种:

门票1

 ---------------------------
| id     creation_time  .... |
 ---------------------------


门票#2
 ------------------------------------------------
| id     creation_time    auto_closure_time .... |
 ------------------------------------------------


机票#3
 -------------------------
| id       permanent .... |
 -------------------------


数据类型:

创建时间,自动关闭时间-日期时间

永久-布尔值


票证3由于特定原因没有creation_time

[四个点(....)表示具有所有票证的其他一些列

我的问题是:我应该分开这些表还是将它们合并到一个看起来像这样的表中?

 -----------------------------------------------------------
| id        creation_time   auto_closure_time     permanent | 
| 1              xyz               NULL               0     |
| 2              xyz               xyz                0     |
| 3              NULL              NULL               1     |
 -----------------------------------------------------------

ID 1代表故障单#1,依此类推。

分离的表和合并的表有什么好处?

感谢所有答案,感谢您的宝贵时间。

我只是进入数据库的设计和结构。我现在面临一个问题。假设我要有一个票证数据库,票证有三种类型:票证#1 --------------------------- | .. 。

mysql database postgresql database-design
1个回答
0
投票

我只有一个只有creation_timeauto_closure_time的表,并使用“不可能”值表示永久性。那可能是创建时间的开始,也可能是关闭时间的结束(无论如何定义)。正如您所描述的,类型1的票证仅获得NULL auto_closure_time

© www.soinside.com 2019 - 2024. All rights reserved.