0

'a'と'b'の2つのテーブルがあるとしましょう。'a'と'b'の関係は1対多です。両方のテーブルにフィールドを持たせますstatus。このフィールドの値は「アクティブ」および「非アクティブ」です。フィールドを「非アクティブ」に設定した場合、MySQLには、値statusを変更した行に関連付けられているすべてのテーブルにこれをカスケードする方法がありますか?statusそれとも、これはプログラムレベルで行う必要がありますか?

これが明確でない場合はお知らせください。

4

2 に答える 2

3

必要に応じてすべての子を更新する親テーブルでトリガーを使用できます。それ以外の場合は、親行を更新するアプリケーションと同じレベルで処理する必要があります。

于 2009-10-14T18:58:01.157 に答える
0

私はこれを試したことがないので、それをお勧めするかどうかはわかりませんが、status列を外部キーに追加すると(テーブル 'a' の主キーと の 2 つの列がありますstatus)、それを使用on update cascadeします同様に機能する可能性があります。

于 2009-10-14T19:05:42.530 に答える