0
我正在嘗試創建一個觸發器,以防止爲cname列插入空字符串,並且通過將其設置爲null來禁止empno列的小於7000和大於8000的值。這裏是我如何做到這一點:通過觸發器限制mysql插入值
delimiter $$
CREATE TRIGGER test1
BEFORE insert
ON clients
FOR EACH row BEGIN
if new.cname = '' THEN
SET new.cname = null;
if new.empno <7000 THEN
SET new.empno = null;
if new.empno>8000 THEN
SET new.empno = null;
end if;
end if;
end if;
end;
cname列工作正常。但是empno會接受任何事情,我不明白爲什麼。我的表是這樣的:
CREATE TABLE clients
(
empno INTEGER NOT NULL DEFAULT 7654
cname VARCHAR(20) NOT NULL
);
現在的作品,因爲它應該。非常感謝你。 – Modaresi