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

並べ替え/順序列を更新するトリガーを作成する

    回避策は、これをbeforeトリガーにして、挿入する前に挿入されるレコード自体を更新することだと思います。

    だから

    CREATE
    /*!50017 DEFINER = 'admin'@'%' */
    TRIGGER `trigger_liability_detail_after_insert` BEFORE INSERT ON `liability_detail` 
        FOR EACH ROW BEGIN
        DECLARE SortOrder INT;
        IF NEW.liability_category_id = 1 OR NEW.liability_category_id = 2 THEN
    
        SET NEW.seq = 1 + IFNULL((SELECT MAX(seq) FROM liability_detail WHERE analysis_id = new.analysis_id AND liability_category_id IN (1, 2)), 0);
        END IF;
        END;
    $$
    

    これは簡単なコピー/貼り付けでしたが、それらの線に沿ったものである必要があります。



    1. Slick2.0の一般的なCRUD操作

    2. base64データの保存-行サイズが大きすぎる問題

    3. テーブルの設計中に1対1、1対多、および多対多の関係を実装するにはどうすればよいですか?

    4. Google CloudSQLPostgreSQLインスタンスでの遅いクエリのログ記録