CASE表达式语法错误SQL

JDV*_*590 4 sql sql-server syntax sql-server-2005

我已经到处研究过但似乎无法解决一个简单的错误:运行Microsoft SQL服务器:

UPDATE copyprogmaster
       SET active =
                 CASE
                   WHEN active = 1 THEN active = 0
                   WHEN active = 0 THEN active = 1
                  ELSE active
                 END
WHERE source = 'Mass_Mail'
Run Code Online (Sandbox Code Playgroud)

我的错误是:

第4行:'='附近的语法不正确.

JNK*_*JNK 10

删除=THEN,所以:

  UPDATE copyprogmaster
       SET active =
                 CASE
                   WHEN active = 1 THEN 0
                   WHEN active = 0 THEN 1
                  ELSE active
                 END
  WHERE source = 'Mass_Mail'
Run Code Online (Sandbox Code Playgroud)

你已经在第二行active =之后了SET.