У меня проблемы. Я пытаюсь получить таблицу для обновления, однако она не обновляется, поскольку одно из полей содержит строки со значением NULL.
Вот оригинальный запрос, который не дает ошибки:
sql="UPDATE empPac SET quantityLimit = allocation, allocationStart = '"&allocationStart&"', nextUpdate = DATEADD(mm, allocationMonths, "&allocationStart&"), lastUpdate = GETDATE(), quantityIssued = 0, quantityShipped = 0 WHERE allocationMonths <> 0 AND nextUpdate <= DATEADD(mm, "&checkCondition&", GETDATE()) and empIdent in (select empIdent from employee where custIdent='"&custIdent&"')"
Теперь столбец nextUpdate может иметь значение NULL, поэтому я пытаюсь согласовать это с этим запросом:
sql="UPDATE empPac SET quantityLimit = allocation, allocationStart = '"&allocationStart&"', nextUpdate = DATEADD(mm, allocationMonths, "&allocationStart&"), lastUpdate = GETDATE(), quantityIssued = 0, quantityShipped = 0 WHERE allocationMonths <> 0 AND (nextUpdate <= DATEADD(mm, "&checkCondition&", GETDATE()) OR nextUpdate IS NULL) and empIdent in (select empIdent from employee where custIdent='"&custIdent&"')"
Вы можете видеть, что я добавил "ИЛИ nextUpdate IS NULL" в скобках с другим условием для nextUpdate.
Тем не менее, я получаю сообщение об ошибке "Не удается вставить значение NULL в столбец" amountLimit ", таблица" myname.dbo.EmpPac "; столбец не допускает нулевые значения. UPDATE не удается."
Это не имеет смысла для меня, поскольку при просмотре myLittleAdmin показывает мне значение NULL для некоторых строк в этом столбце таблицы.