Я написал триггер, который содержит следующие строки:
DECLARE is_journal TINYINT(1);
SET @is_journal := 1;
IF (is_journal IS NOT NULL) THEN
INSERT INTO 'log' VALUES("is_journal is not null");
ELSE
INSERT INTO 'log' VALUES("is_journal is null");
END IF;
И в моей таблице log
я всегда получаю результат
is_journal имеет значение null
Почему это происходит?
Поскольку вы устанавливаете значение для @is_journal
. И сравнение значения is_journal
.
Поэтому, прежде всего, вы знаете, что обе эти вещи разные.
Поэтому вместо
IF (is_journal IS NOT NULL) THEN
line put
IF (@is_journal IS NOT NULL) THEN
.