SQL Server vám neumožňuje předávat parametry proceduře, kterou jste nedefinovali. Myslím, že nejblíže k tomuto druhu designu se můžete dostat pomocí volitelných parametrů, jako je to:
CREATE PROCEDURE GetTaskEvents
@TaskName varchar(50),
@ID int = NULL
AS
BEGIN
-- SP Logic
END;
Budete muset zahrnout všechny možné parametry, které byste mohli použít v definici. Pak můžete proceduru zavolat oběma způsoby:
EXEC GetTaskEvents @TaskName = 'TESTTASK', @ID = 2;
EXEC GetTaskEvents @TaskName = 'TESTTASK'; -- @ID gets NULL here