元請け→当社→下請
といった形で業務をしています
一つの仕事を複数の下請に委託するので、1対多で組むことになると思います
受注テーブル
下払テーブル
になると思いますが
まれにどの仕事を下請に流す、というわけでもない仕事をやってもらうこともあります
(例えばミスの修正で応援してもらう、など)
そのような場合は親子関係は無視して直接下払テーブルにレコードを追加するものですか?
それとも親子関係のテーブルとは別にもう一つテーブルをつくるものでしょう?
また、受注が確定していない段階で先に下請に委託することもあります
そのような場合、どういった仕組みにするのがよいでしょうか?
0円や未確定フラグを立てた親レコードをつくり、あとから修正、とかでしょうか?
それぞれのデータは全く別物で、まとめて集計するとか検索するとかのように同じに扱うことはない、なら別にテーブルを作りますが、そうでないなら、テーブルは別にしないですね。
また、親レコードなしに子レコードのみというのもデータベースとしてはありえない状態なのでそのようなこともしないです。何らかの親レコードを作成してから、子レコードを入力します。親の項目名はなにか適当に決めておきます(「元請けなし」とか)。
私なら、そうしますね。