DELIMITER $$ DROP PROCEDURE IF EXISTS CJ_Data$$ CREATE PROCEDURE CJ_Data(in_xh CHAR(6),in_kch CHAR(3),in_cj INT(4)) BEGIN DECLARE in_count INT(4); DECLARE in_xf TINYINT(1); DECLARE in_cjb_cj INT(4); SELECT XF INTO in_xf FROM KCB WHERE KCH=in_kch; SELECT COUNT(*) INTO in_count FROM CJB WHERE XH=in_xh AND KCH=in_kch; SELECT CJ INTO in_cjb_cj FROM CJB WHERE XH=in_xh AND KCH=in_kch; IF in_count>0 THEN BEGIN DELETE FROM CJB WHERE XH=in_xh AND KCH=in_kch; IF in_cjb_cj>60 THEN UPDATE XSB SET ZXF=ZXF-in_xf WHERE XH=in_xh; END IF; END; END IF; IF in_cj!=-1 THEN BEGIN INSERT INTO CJB VALUES(in_xh,in_kch,in_cj); IF in_cj>60 THEN UPDATE XSB SET ZXF=ZXF+in_xf WHERE XH=in_xh; END IF; END; END IF; END$$ DELIMITER ;USE Sams2; DELIMITER $$ CREATE TRIGGER Check_XSB_CJB AFTER DELETE ON XSB FOR EACH ROW BEGIN DELETE FROM CJB WHERE XH=OLD.XH; END$$ DELIMITER ;
注意 空格 DELIMITER ;
第一个解决了..触发器还有错误.说#1235 - This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
没看见有,存储过程也没看见,不过确实是执行成功.. 可以告诉我删除TRIGGER的代码吗?
SHOW TRIGGERS ; drop TRIGGER TRIGGERname
您的 SQL 语句已成功运行 ( 查询花费 0.0038 秒 ) SHOW TRIGGERS输入你那个就这样而已,也没看见什么TRIGGERS的名字
DROP PROCEDURE IF EXISTS CJ_Data$$
CREATE PROCEDURE CJ_Data(in_xh CHAR(6),in_kch CHAR(3),in_cj INT(4))
BEGIN
DECLARE in_count INT(4);
DECLARE in_xf TINYINT(1);
DECLARE in_cjb_cj INT(4);
SELECT XF INTO in_xf FROM KCB WHERE KCH=in_kch;
SELECT COUNT(*) INTO in_count FROM CJB WHERE XH=in_xh AND KCH=in_kch;
SELECT CJ INTO in_cjb_cj FROM CJB WHERE XH=in_xh AND KCH=in_kch;
IF in_count>0 THEN
BEGIN
DELETE FROM CJB WHERE XH=in_xh AND KCH=in_kch;
IF in_cjb_cj>60 THEN
UPDATE XSB SET ZXF=ZXF-in_xf WHERE XH=in_xh;
END IF;
END;
END IF;
IF in_cj!=-1 THEN
BEGIN
INSERT INTO CJB VALUES(in_xh,in_kch,in_cj);
IF in_cj>60 THEN
UPDATE XSB SET ZXF=ZXF+in_xf WHERE XH=in_xh;
END IF;
END;
END IF;
END$$
DELIMITER ;USE Sams2;
DELIMITER $$
CREATE TRIGGER Check_XSB_CJB AFTER DELETE
ON XSB FOR EACH ROW
BEGIN
DELETE FROM CJB WHERE XH=OLD.XH;
END$$
DELIMITER ;
DELIMITER ;
可以告诉我删除TRIGGER的代码吗?
drop TRIGGER TRIGGERname
SHOW TRIGGERS输入你那个就这样而已,也没看见什么TRIGGERS的名字
SHOW TRIGGERS ;
贴结果