UPDATE
@Customer
SET
ValidaitonAction = 1
WHERE NOT EXISTS
(SELECT 1 FROM DMScustomerupload WHERE AccountNumber = @Customer.AccountNumber)
Where @Customer
is a TABLE variable:
DECLARE @Customer TABLE ( ID int,
ValidaitonAction int,
... other columns))
On the last line, I get
Must declare scalar variable @Customer
You need a table alias:
UPDATE c
SET ValidationAction = 1
FROM @Customer c
WHERE NOT EXISTS (SELECT 1 FROM DMScustomerupload cu WHERE cu.AccountNumber = c.AccountNumber);
SQL Server automatically interprets anything that starts with a @
as a variable (of some sort). Table aliases are a different thing, so it doesn't find a match.