title: Is this a good solution design?
body: <p>I have three main tables, WorkOrders, Computers and Tasks. WorkOrders is an order to repair a computer. So has the computer that will be repair, date and so on.</p>
  
  <p>Computers are the computers that must be repair if one is failed. Finally I have the tasks that I can do in a computer.</p>
  
  <p>In a first approximation the relation between work order and computer is 1:N because a computer can be repaired many times, but a work order is only for one computer.</p>
  
  <p>The relation between computer and task is 1:N because one computer may need many tasks to be repaired but one task is done in a computer.</p>
  
  <p>So the relation could be set at this way:</p>
  
  <pre><code>WorkOrders(IDOrder, IDComputer, ...)
  Computers(IDComputer, ...)
  Tasks(IDTask, IDComputer,...)
  </code></pre>
  
  <p>However this don't let me to know what task are made in an work order. Because if a computer is repaired many times, how I know which of the task is of one work order of from another?</p>
  
  <p>So I am thinking in the possibility to use a relation table in this way:</p>
  
  <pre><code>CommonTable(IDOrder, IDComputer, IDTask,...)
  </code></pre>
  
  <p>But in this way it seems that the task can be in many computers and many orders, and this is not correct in theory.</p>
  
  <p>Other solution is to add in task the IDOrder, but in this case a I have a cycle in the relationships, and I think that this is not correct.</p>
  
  <p>So I would like to know if this is a good solution in practice or there are a better one.</p>