pomoc wyzwalacza serwera sql - ta sama aktualizacja tabeli
Podobne pytanie wysłałem wcześniej - ale nie wydaje mi się, żeby dostał wystarczająco długą odpowiedź! Przepraszam, jeśli nie powinienem znowu publikować!
Używa SQL Server 2008. Mam tabelę o nazwie faktura;
create table INVOICE(
INVOICE_ID numeric(5) PRIMARY KEY IDENTITY,
INVOICE_STATUS varchar(25) not null,
TRADER_STATUS varchar (25))
Chcę utworzyć wyzwalacz po wprowadzeniu wstawki; oraz invoice_status = 'pending' - trader_status jest aktualizowany (wyzwalany) na „open”. Po wprowadzeniu wkładki; a invoice_status = 'overdue' - trader_status jest aktualizowany (wyzwalany) na „zablokowany”.
Kod wyzwalacza, który mam;
CREATE TRIGGER [dbo].[test] on [dbo].[invoice]
FOR INSERT, UPDATE
AS
BEGIN
SET NOCOUNT ON;
declare @invoice_status varchar(25)
select @invoice_status = (select invoice_status from inserted WHERE invoice_status = 'PENDING')
insert into invoice (trader_status) values ('OPEN')
select @invoice_status = (select invoice_status from inserted WHERE invoice_status = 'OVERDUE')
insert into invoice (trader_status) values ('BLOCKED')
END
GO
Każda pomoc jest bardzo mile widziana!