По сути, вам нужно написать что-то вроде:
CREATE PROCEDURE dbo.CleanupTableA (@CleanupDays INT)
AS BEGIN
DELETE FROM A.Fullimport
WHERE DATEDIFF(DAY, SomeDateField, GETDATE()) > @CleanupDays
END
или что-то в этом роде - без точных структур таблиц действительно трудно получить это полностью правильно .....
Функция DATEDIFF
может дать вам разницу между двумя датами в различных единицах - например, в днях, как вы хотите (также могут быть недели, месяцы, год и т. д.). Все, что вам в основном нужно сделать, - это удалить все строки, которые имеют DATEDIFF
на сегодняшнюю дату, которая больше, чем значение @CleanupDays
, переданное в хранимую процедуру.
Я не совсем понимаю, что вы имели в виду под таблицей ошибок .... вам, возможно, потребуется уточнить это немного ...