source

SQL 트리거에서 삽입에 열 값이 포함되어 있는지 확인합니다.

manysource 2022. 12. 13. 20:09

SQL 트리거에서 삽입에 열 값이 포함되어 있는지 확인합니다.

SQL 테이블에 트리거가 있으며 삽입에 열 값이 포함되어 있는지 확인하려고 합니다.Produktnummer이 배경에는 트리거로 인해 발생할 수 있는 다른 삽입을 실행할지 여부가 있습니다.

내 방아쇠 안에 이게 있어 내 방아쇠가 실제로 삽입되기 전에 말이야 IF NEW.Produktnummer IS NOT NULL OR NOT '' THEN이어서END IF마지막에.

트리거는 다음과 같습니다.

IF NEW.Produktnummer IS NOT NULL OR NOT '' THEN
[This piece triggers another Insert]
END IF

하지만 if 표현은 항상 참인 것 같습니다. 심지어 제 삽입물에 다음 값이 포함되어 있지 않아도NEW.Produktnummer.

확인해도 될까요?IS NOT NULL OR NOT ''트리거 내에 NEW 변수를 포함하거나 트리거 내부에 있는 문을 조건부로 실행할 수 있는 다른 방법이 있습니까?

''부울 컨텍스트에서는 false-y이기 때문에NOT ''맞다, 그리고if조건은 항상 참입니다.확인하려는 것 같은데?Produktnummer와 함께<>연산자:

IF NEW.Produktnummer IS NOT NULL AND NEW.Produktnummer <> '' THEN
    -- trigger the other insert
END IF

언급URL : https://stackoverflow.com/questions/65969890/in-sql-trigger-check-if-an-insert-contains-a-value-for-a-column