Skip to the content.

A variable is not declared, and no corresponding parameter could be found. Did you mean to pass a parameter? Or declare the variable?

Bad:

select @i;

Good:

declare @i int = 15;
select @i;

Note that this warning only happens if the tooling is sure it understands your parameter usage; otherwise it has to assume that the unknown variable is in fact a parameter.