Diskuze: Trigger
Zobrazeno 6 zpráv z 6.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
Pri deklarovaní premennej musíš pred jej názov dať @
DECLARE @original_query VARCHAR(1024);
a to priradenie do nej by som použil bez SELECT INTO, spôsobom
SET @original_query = (SELECT info FROM INFORMATION_SCHEMA.PROCESSLIST WHERE id = CONNECTION_ID());
alebo
SELECT @original_query = info FROM INFORMATION_SCHEMA.PROCESSLIST WHERE id = CONNECTION_ID());
Ty jo, ani tak ne..
Přikládám screen zápisu triggeru a další s chybou co to hází.
Jaj skús bez bodkočiarky za deklaráciou
Takže, funkční trigger vypadá takto:
BEGIN
DECLARE original_query VARCHAR(1024);
SET @original_query = (SELECT info FROM INFORMATION_SCHEMA.PROCESSLIST WHERE
id = CONNECTION_ID());
INSERT INTO tracking(hodnota, datum, user, sql_dotaz)
VALUES('update', NOW(), USER(), @original_query);
END
problém nyní je, že se mi proti očekávání do original_query nedostává dotaz který updatoval zaznamy tabulky ale stále dotaz z triggeru. Jak toho docílím? Potřebuji mít uložený ten sql dotaz provedl update tabulky.
Zobrazeno 6 zpráv z 6.