Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Database 关系数据库设计周期_Database_Loops_Cycle_Relational - Fatal编程技术网

Database 关系数据库设计周期

Database 关系数据库设计周期,database,loops,cycle,relational,Database,Loops,Cycle,Relational,我有以下数据库设计: 我想添加一个名为Task的新表,它将与一个项目有一对多的关系(项目将有一个或多个任务,并且特定的任务将只属于一个项目)。下一个用户还将被分配到项目中的不同任务(基本上,用户表需要另一个与任务的多对多关系,但这会在设计中创建一个循环)。这是一个好的实践还是应该避免在设计中生成循环 下一个用户还将被分配到项目中的不同任务(基本上,用户表需要另一个与任务的多对多关系…) 可能不会 您可能只需要那些与分配给特定任务的特定项目相关的用户。因此,您需要任务中的一个外键来引用项目的用户

我有以下数据库设计:

我想添加一个名为Task的新表,它将与一个项目有一对多的关系(项目将有一个或多个任务,并且特定的任务将只属于一个项目)。下一个用户还将被分配到项目中的不同任务(基本上,用户表需要另一个与任务的多对多关系,但这会在设计中创建一个循环)。这是一个好的实践还是应该避免在设计中生成循环

下一个用户还将被分配到项目中的不同任务(基本上,用户表需要另一个与任务的多对多关系…)

可能不会

您可能只需要那些与分配给特定任务的特定项目相关的用户。因此,您需要任务中的一个外键来引用项目的用户,这似乎是一个命名奇怪的表“project\u userprojectrelation”

当您需要级联更新或删除时,“循环”有时会造成麻烦。但通常可以从循环的“末端”或“中间”向“顶部”删除行。唯一不起作用的时间是当外键在同一方向的循环中相互追逐时。大多数dbms都会警告您此类问题