The code below will show you how exactly you delete a row with a NULL value. You can not use =NULL but you have to use IS NULL
CREATE TABLE #TestDeleteNull (id INT identity, SomeDate DATETIME)
INSERT #TestDeleteNull VALUES(GETDATE())
INSERT #TestDeleteNull VALUES(GETDATE())
INSERT #TestDeleteNull VALUES(NULL)
--Check what's in the table
SELECT * FROM #TestDeleteNull
--This won't workDELETE #TestDeleteNull
WHERE SomeDate = NULL
--(0 row(s) affected)
--This is the wayDELETE #TestDeleteNull
WHERE SomeDate IS NULL
--(1 row(s) affected)
--Check again
SELECT * FROM #TestDeleteNull
CREATE TABLE #TestDeleteNull (id INT identity, SomeDate DATETIME)
INSERT #TestDeleteNull VALUES(GETDATE())
INSERT #TestDeleteNull VALUES(GETDATE())
INSERT #TestDeleteNull VALUES(NULL)
--Check what's in the table
SELECT * FROM #TestDeleteNull
--This won't workDELETE #TestDeleteNull
WHERE SomeDate = NULL
--(0 row(s) affected)
--This is the wayDELETE #TestDeleteNull
WHERE SomeDate IS NULL
--(1 row(s) affected)
--Check again
SELECT * FROM #TestDeleteNull