У меня есть база данных с таблицами Customer and WatchHistory. Клиент может смотреть фильм только после его подписки и до его подписки. Я попытался следующие:добавить ограничение, используя другую таблицу
ALTER TABLE WatchHistory
ADD CONSTRAINT ck_watch_date
CHECK (watch_date > Customer.subscription_start AND watch_date < Customer.subscription_end)
Но я получаю следующее сообщение об ошибке:
Msg 4104, Level 16, State 1, Line 3
The multi-part identifier "Customer.subscription_start" could not be bound.
Msg 4104, Level 16, State 1, Line 3
The multi-part identifier "Customer.subscription_end" could not be bound.
Я предполагаю, что я должен использовать присоединиться, но где я ставлю что? Ниже не работает:
ALTER TABLE WatchHistory INNER JOIN Customer
ON WatchHistory.customer_mail_address = Customer.customer_mail_address
ADD CONSTRAINT ck_watch_date
CHECK (watch_date > Customer.subscription_start AND watch_date < Customer.subscription_end)
Я думаю, что вам нужен определенный пользователем функцию, чтобы осуществить это. –