|
MySQL.RU - Webboard
Вернуться
Тригеры (sergej) 06/01/2008 - 15:45:24
Re: Тригеры (vi.k) 09/01/2008 - 06:24:39
Re: Тригеры (sergej) 10/01/2008 - 12:15:21
Re: Тригеры (vi.k) 11/01/2008 - 04:55:59
Re: Тригеры (sergej) 11/01/2008 - 12:22:12
Re: Тригеры (vi.k) 15/01/2008 - 02:54:20
Re: Тригеры (vi.k) 15/01/2008 - 03:18:51
Re: Тригеры (vi.k) 15/01/2008 - 04:04:14
From: sergej - 06/01/2008 - 15:45:24
Subject:Тригеры
-----------------
Как переделать эти тригеры на mysql
CREATE TABLE SERVICE (
ID INTEGER NOT NULL,
PARENT INTEGER NOT NULL,
NAME VARCHAR(30) CHARACTER SET WIN1251 COLLATE WIN1251,
CCOUNT INTEGER DEFAULT 0);
ALTER TABLE SERVICE ADD CONSTRAINT PK_OBJECTS PRIMARY KEY (ID);
SET TERM ^ ;
CREATE TRIGGER TBD_SERVICE FOR SERVICE
ACTIVE BEFORE DELETE
POSITION 0
AS
BEGIN
UPDATE SERVICE O
SET O.CCOUNT = O.CCOUNT - 1
WHERE O.ID = old.PARENT;
END^
CREATE TRIGGER TBI_SERVICE FOR SERVICE
ACTIVE BEFORE INSERT
POSITION 0
AS
BEGIN
UPDATE SERVICE O
SET O.CCOUNT = O.CCOUNT + 1
WHERE ID = new.PARENT;
END^
CREATE TRIGGER TBU_SERVICE FOR SERVICE
ACTIVE BEFORE UPDATE
POSITION 0
AS
BEGIN
if (old.PARENT <> new.PARENT) then
begin
UPDATE SERVICE O SET O.CCOUNT = O.CCOUNT - 1
WHERE O.ID = old.PARENT;
UPDATE SERVICE O SET O.CCOUNT = O.CCOUNT + 1
WHERE O.ID = new.PARENT;
end
END^
SET TERM ; ^
[Это сообщение - спам!]
Последние сообщения из форума
Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL,
версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
32773
|
|