sql >> データベース >  >> RDS >> Mysql

単一テーブル継承に参照整合性を適用するにはどうすればよいですか?

    できることは、Usersにトリガーを実装することです およびTeam 次のいずれかから行が削除されるたびに実行されるテーブル:

    ユーザーテーブル:

    DELIMITER $$
    CREATE TRIGGER user_playlist_delete 
    BEFORE DELETE ON User FOR EACH ROW
    BEGIN
        DELETE a FROM Playlist a
        INNER JOIN UserPlaylist b ON a.id = b.id AND b.userId = OLD.id;
    END$$
    DELIMITER ;
    

    チームテーブル:

    DELIMITER $$
    CREATE TRIGGER team_playlist_delete 
    BEFORE DELETE ON Team FOR EACH ROW
    BEGIN
        DELETE a FROM Playlist a
        INNER JOIN TeamPlaylist b ON a.id = b.id AND b.teamId = OLD.id;
    END$$
    DELIMITER ;
    

    これらのトリガーが行うことは、これらのテーブルの1つからレコードが削除されるたびにDELETE 操作はPlaylistsで自動的に実行されます idを使用したテーブル これは(内部結合を介して)削除されようとしています。

    私はこれをテストしました、そしてそれはうまくいきます。



    1. MySQL Workbenchとは何ですか?

    2. psql:サーバーに接続できませんでした:接続が拒否されましたリモートデータベースに接続するときにエラーが発生しました

    3. ORDERBYの最適化

    4. MySQLの列名で特殊文字を使用するにはどうすればよいですか?