Я использую SQL Server 2008 Management Studio. Ниже то, что я должен написать, и у меня есть некоторые трудности для второго ограничения. Это немного смущает меня, и я был бы очень признателен за помощь.
Напишите инструкцию ALTER TABLE, которая добавляет два новых проверочных ограничения в таблицу Invoices базы данных AP. Первое должно позволять (1) PaymentDate быть нулевым, только если PaymentTotal равен нулю, и (2) PaymentDate должно быть не нулевым, только если PaymentTotal больше нуля. Второе ограничение должно препятствовать тому, чтобы сумма PaymentTotal и CreditTotal была больше, чем InvoiceTotal.
Вот то, что у меня есть, первое ограничение работает, но не второе, (сумма PaymentTotal и CreditTotal больше, чем InvoiceTotal).
ALTER TABLE Invoices WITH CHECK
ADD check (
(PaymentTotal = 0 AND PaymentDate is NULL)
OR
(PaymentTotal > 0 AND PaymentDate is NOT NULL)
)
ADD CHECK (
(PaymentTotal < InvoiceTotal = SUM)
OR
(CreditTotal < InvoiceTotal = SUM)
)
Заранее спасибо.