Можете ли вы? Да. Тебе следует? Почти наверняка нет.
use this AskTom package to generate triggers that implement cascading updates. Это создаст несколько триггеров и пакет и реализует различные биты логики, которые вам нужны для каскадного обновления.
Функционально, однако, это много движущихся частей, работающих в вашей базе данных, чтобы реализовать каскадное обновление. Как правило, желание делать каскадные обновления подразумевает, что ваш выбор первичного ключа менее идеален. Первичный ключ должен быть неизменным. В этом примере я бы предпочел, чтобы первичный ключ parentTable
был изменен на генерируемое по порядку значение, которое никогда не изменилось бы и username
/email
было сделано unique
. Затем дочерняя таблица могла использовать неизменяемое генерируемое последовательностью значение в качестве внешнего ключа, и пользователи могли бы свободно обновлять свои адреса электронной почты без необходимости каскадирования обновления через различные дочерние таблицы.
Вы имеете в виду иностранный ключ? – Thomas
спасибо за ответ yup. – Programmer