Ich nenne nur einen Wert in einer anderen Tabelle in SQL Server, aber ich habe ein Problem:Wie Wertes in einer anderen Tabelle mit Trigger Auswahl
CREATE TRIGGER [dbo].[IdHeadOtomatis]
ON [dbo].[RollsNumberSimulation]
FOR INSERT, UPDATE
AS
BEGIN
UPDATE [RollsNumberSimulation]
SET IdHead = (SELECT IdHead
FROM NewCutPlan
WHERE [IdNewCutPlan] = IdNewCutPlan)
WHERE [IdRollNumber] IN (SELECT [IdRollNumber] FROM Inserted)
END
Diese Abfrage kann eingefügt aber wenn der Einsatz „IdNewCutPlan“ Fehler in diesem Bildschirmfoto.
Bitte helfen,
Danke, Bang
Verwenden Sie MySQL oder SQL Server? In ersterem Fall ist es nicht möglich, die gleiche Tabelle zu modifizieren, die den Auslöser ausgelöst hat. Solche rekursiven Trigger können auch in SQL Server deaktiviert werden und sind möglicherweise auch dort nicht ratsam. –
Irgendwelche Ideen? Wie bekomme ich einen Wert per ID im Trigger oder sonst? – Bang
Der einfachste Weg könnte sein, über eine logische Möglichkeit nachzudenken, nicht auf der aufrufenden Tabelle auslösen zu müssen. Vielleicht könnten Sie es in Ihrer Geschäftslogik behandeln, bevor es die Datenbank erreicht. –