Страница 1 из 1 |
MySQL (5.0)
Автор | Сообщение |
---|---|
|
0
Возникла проблема с синтаксисом, тяжело дается
вообщем Код: CREATE TRIGGER small ON vid_rab AFTER INSERT AS BEGIN SET NOCOUNT ON; end// if (select v_summ_op from vid_rab)<'500' rollback Print'Вы не можете вставлять запись менее 500 рублей' END // косяк гдето после begin`a и в конце Код: Delimiter // CREATE PROCEDURE ord_dop_rab() Begin DECLARE id int, DECLARE n_rab int default 0, DECLARE date_n date, DECLARE date_o date, DECLARE cod_rab, DECLARE kurs1 CURSOR FOR SELECT * FROM dop_rab, WHERE date_nach BETWEEN '2011.09.01' AND '2011.09.30', DECLARE CONTINUE HANDLER FOR NOT FOUND SET n_rab=1, OPEN kurs1, wet:LOOP, FETCH kurs1 INTO id, n_rab, date_n, date_o, cod_rab, IF n_rab THEN LEAVE wet, END IF, INSERT INTO Yanvar VALUES (id id, n_rab, date_n, date_o, cod_rab), end loop wet close kurs1; END // сдесь в конце |
15 дек 2011, 10:13 |
|
|
0
По первому пункту вот что говорит дока mysql
CREATE TRIGGER trigger_name trigger_time trigger_event ON tbl_name FOR EACH ROW trigger_stmt Так что в теории должно быть так: CREATE TRIGGER small AFTER INSERT ON vid_rab FOR EACH ROW BEGIN SET NOCOUNT ON; end; if (select v_summ_op from vid_rab)<'500' rollback Print'Вы не можете вставлять запись менее 500 рублей' END |
15 дек 2011, 11:18 |
|
Страница 1 из 1 |