階層クエリに問題があります。次のような自己参照テーブルがあります。
id parent_id name size
-----------------------------------------
1 null Ship1 50
2 1 cabin1 10
3 1 cabin2 30
4 3 shelf1 5
5 3 shelf2 20
6 null Ship2 50
7 6 cabin1 10
8 6 cabin2 30
9 7 shelf1 15
データベースにトリガーを追加して、ユーザーがその船の残りのサイズを超えるキャビンを追加できないようにする必要があります。
たとえば、テーブルでは、船 1 の合計サイズは 50 です。サイズ 40 を消費するキャビンが 2 つあります。したがって、使用可能なスペースとして 10 が残ります。サイズが 10 を超える別のキャビンを追加することはできません。<= 10 であれば問題ありません。キャビンや棚も同様です。キャビン内のすべての棚の合計サイズは、そのキャビンに割り当てられた合計サイズを超えてはなりません。
テーブル (ルート) には、任意の数の出荷エントリを含めることができます。
私は階層的なクエリについて知っており、ツリーをたどることができますが、問題について自分の考えをまとめるのが難しいと感じています。そのトリガーを正常に追加できるように、誰かが私を正しい方向に向けてもらえますか?