CREATE TRIGGER update_related_table
AFTER UPDATE ON source_tableFOR EACH ROWBEGIN
UPDATE target_table SET column = NEW.column WHERE id = NEW.id;END;
关联更新SQL语句
使用UPDATE结合JOIN语句手动执行级联更新
UPDATE table1 t1
JOIN table2 t2 ON t1.id = t2.id
SET t1.column = t2.column
WHERE t1.id = 123;
Oracle数据库的特殊实现
Oracle通过子查询或EXISTS实现级联更新
UPDATE table1 t1
SET (col1, col2) = ( SELECT col1, col2 FROM table2 t2
WHERE t2.id = t1.id
)
WHERE EXISTS (SELECT 1 FROM table2 t2 WHERE t2.id = t1.id);