以下のテーブルは同一データベース内にあります。
テーブル名:table_a
フィールド:id
grade_a
テーブル名:table_b
フィールド:id
grade_b
平たく言えば、grade_aとgrade_bを常に同期させたいのです。
何らかの操作によって、
table_aのidが1のレコードのgrade_aの値が変化したとします。
その場合に、
table_bのidが1のレコードのgrade_bの値も同じように変化するようにしたいです。
平たく言えば「table_aが変わる → table_bも変わる」です。
・table_bの値を何らかの操作で変化させることはありません。変わるのはtable_aのみです。
・お互いのテーブルのidは全く同じもので、table_aに3があればtable_bに3は必ずあります。
文章で書くと何やらわかりづらくなりましたが、もし可能ならば教えてください。よろしくお願いします。
【MySQLウォッチ】第16回 MySQL 5.0ベータ版リリース,新機能トリガーとビューを試す:ITpro
MySQL 5.0 以降であればトリガーが使えます。
それ以前のバージョンでは table_a の変更時に table_b も変更する以外の手はありません。
【MySQLウォッチ】第16回 MySQL 5.0ベータ版リリース,新機能トリガーとビューを試す:ITpro
MySQL 5.0 以降であればトリガーが使えます。
それ以前のバージョンでは table_a の変更時に table_b も変更する以外の手はありません。
>それ以前のバージョンでは table_a の変更時に table_b も変更する以外の手はありません。
おとなしくこれでいこうと思います。
MySQLの質問をする場合は、バージョンを書いてください。
バージョン5.0以降であれば、トリガを使用する方法があります。
すみません配慮がたりませんでした。
バージョンは4.*でした!
外部キー制約が可能なら、on update cascadeなどはいかがでしょう
http://dev.mysql.com/doc/refman/4.1/ja/innodb-foreign-key-constr...
>それ以前のバージョンでは table_a の変更時に table_b も変更する以外の手はありません。
おとなしくこれでいこうと思います。