Create Trigger After Update MySQL
Hallo zusammen, ich versuche mich mit einem Trigger der mir bei einer speziellen Tabelle den Value automatisch wieder auf standard zurücksetzt.
CREATE TRIGGER tr_up_otpions_value
BEFORE UPDATE ON option_value FOR EACH ROW
BEGIN
IF (:old.option_value = 'https://mydomain.com') then
:new.option_value := 'https://mydomain.com';
end if;
end;
in der Tabelle asdlfkj_options gibt es die Zeile 1 und 2 mit option_id 1 und 2 die im Value (option_value) https://mydomain.com enthalten müssen.
Wenn diese überschrieben werden, dann soll der Trigger diesen automatisch auf https://mydomain.com zurückändern.
Dies soll aber eben nur in option_id 1 und option_id 2 erfolgen
Leider ergibt es einen Fehler:
#1064 - Fehler in der SQL-Syntax. Bitte die korrekte Syntax im Handbuch nachschlagen bei ':old.option_value = 'https://mydomain.com') then
:new.option_value := 'https...' in Zeile 4
CREATE TRIGGER tr_up_otpions_value
BEFORE UPDATE ON option_value FOR EACH ROW
BEGIN
IF (:old.option_value = 'https://mydomain.com') then
:new.option_value := 'https://mydomain.com';
end if;
end;
in der Tabelle asdlfkj_options gibt es die Zeile 1 und 2 mit option_id 1 und 2 die im Value (option_value) https://mydomain.com enthalten müssen.
Wenn diese überschrieben werden, dann soll der Trigger diesen automatisch auf https://mydomain.com zurückändern.
Dies soll aber eben nur in option_id 1 und option_id 2 erfolgen
Leider ergibt es einen Fehler:
#1064 - Fehler in der SQL-Syntax. Bitte die korrekte Syntax im Handbuch nachschlagen bei ':old.option_value = 'https://mydomain.com') then
:new.option_value := 'https...' in Zeile 4
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 621175
Url: https://administrator.de/contentid/621175
Ausgedruckt am: 25.11.2024 um 10:11 Uhr
11 Kommentare
Neuester Kommentar
Moin,
Lösung steht doch da?
lg,
Slainte
PS: Falls dein Google defekt ist: https://docs.microsoft.com/en-us/sql/t-sql/functions/update-trigger-func ...
Lösung steht doch da?
Bitte die korrekte Syntax im Handbuch nachschlagen
lg,
Slainte
PS: Falls dein Google defekt ist: https://docs.microsoft.com/en-us/sql/t-sql/functions/update-trigger-func ...
Hallo xp-user,
bissl spät, habe es eben erst gesehen. Du sollst nicht dumm sterben:
Gruß, Mad Max
bissl spät, habe es eben erst gesehen. Du sollst nicht dumm sterben:
create trigger tr_up_otpions_value on asdlfkj_options for update as
begin
if update (option_value)
begin
update asdlfkj_options
set option_value = 'https://mydomain.com'
from asdlfkj_options o
join deleted d on d.option_id = o.option_id
where o.option_id in (1, 2) and
o.option_value <> 'https://mydomain.com'
end
end
Gruß, Mad Max
Moin,
was ein fehlender Buchstabe nicht so alles ausmachen kann
Bei der Überschrift "Create Trigger After Update MSQL" haben hier alle an MSSQL gedacht, aber Du hast ja MySQL. Da paßt mein Trigger natürlich nicht. Und bei MySQL kann ich Dir auch nicht weiterhelfen, da kann ich auch nur auf das Handbuch verweisen, sorry.
Gruß, Mad Max
was ein fehlender Buchstabe nicht so alles ausmachen kann
Bei der Überschrift "Create Trigger After Update MSQL" haben hier alle an MSSQL gedacht, aber Du hast ja MySQL. Da paßt mein Trigger natürlich nicht. Und bei MySQL kann ich Dir auch nicht weiterhelfen, da kann ich auch nur auf das Handbuch verweisen, sorry.
Gruß, Mad Max
...MySQL...
Ok, dann hätte das der TO mal dazuschreiben sollen .( Ok, bin auch raus.
/EDIT: Just RTFM! https://dev.mysql.com/doc/refman/8.0/en/create-trigger.html