如果 Else 在 SQL 中不起作用

If Else not working in TSQL

如果从不工作。总是陷入其他状态。我已经调试并检查了@nextapprover 不为空。

IF (@nextApprover != NULL)
BEGIN
    UPDATE CallWatching
    SET EmployeeNo = @employeeNo
    WHERE @SRFID = MasterCode;

    INSERT INTO CallForwarding (
        MasterCode
        ,EmployeeNo
        ,ApproverNo
        ,IsForwarded
        ,ForwardBy
        )
    VALUES (
        @SRFID
        ,@EmployeeNo
        ,@nextApprover
        ,0
        ,@EmployeeNo
        )
END
ELSE
BEGIN
    UPDATE CallWatching
    SET STATUS = 1
    WHERE @SRFID = MasterCode;
END

使用IS NOT NULL

即变化:if(@nextApprover!=null)IF(@nextApprover IS NOT NULL)

此外,您应该 <> 而不是 !=,因为它符合 ANSI