У меня есть две таблицы («Трек» и «Альбом»), и я хочу предотвратить удаление некоторых треков, для которых название их альбома «Lost» с этим триггером, но код применим ко всем идентификаторам треков, как мне кажется. Я не могу удалить любую дорожку (идентификатор дорожки является первичным ключом таблицы дорожек, а идентификатор альбома - это внешний ключ таблицы альбомов в дорожке)
Что не так в моем коде? Пожалуйста, помогите!
Спасибо
CREATE TRIGGER Undeletelosttracks AFTER DELETE ON Track
BEGIN
SELECT CASE
WHEN OLD.TrackID = (SELECT Track.TrackID FROM
Track JOIN Album USING(AlbumID)
WHERE Album.Title LIKE 'Lost%'
)
THEN
RAISE(ABORT,'Can not delete')
END;
END;