Ich versuche, einen Trigger in SQL Server 2008 R2 für Überwachungszwecke zu erstellen. Um die richtige Zeitzone für verschiedene Standorte im ganzen Land zu bekommen, versuche ich eine Variable an eine IF/ELSE IF-Anweisung zu übergeben, um die Stunden mit der Funktion DATEADD() zu ändern. Hier ist mein Code:Erwartete Conversation Fehler Sql Server
CREATE TRIGGER epic_cover_insert
ON epic_cover
AFTER INSERT
AS
BEGIN
DECLARE @facilityCode INT
SET @facilityCode = (SELECT RIGHT(order_num, 3) FROM epic_cover)
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- Insert statements for trigger here
UPDATE epic_cover
IF @facilityCode = 403 --for logan
BEGIN
SET Created_By = CASE WHEN Created_By IS NULL THEN SUSER_NAME()
WHEN APP_NAME() = 'Microsoft SQL Server Management Studio - Query' THEN SUSER_NAME()
ELSE Created_By END,
Created_On = DATEADD(HH,-1,GETDATE()
END
ELSE IF @facilityCode = 203 -- for Thermont
BEGIN
SET Created_By = CASE WHEN Created_By IS NULL THEN SUSER_NAME()
WHEN APP_NAME() = 'Microsoft SQL Server Management Studio - Query' THEN SUSER_NAME()
ELSE Created_By END,
Created_On = DATEADD(HH,1,GETDATE())
END
ELSE IF @facilityCode = 263 --for Saint Charles
BEGIN
SET Created_By = CASE WHEN Created_By IS NULL THEN SUSER_NAME()
WHEN APP_NAME() = 'Microsoft SQL Server Management Studio - Query' THEN SUSER_NAME()
ELSE Created_By END,
Created_On = GETDATE()
END
END
END
Ich bekomme alle Arten von Fehlern, die alle sagen, erwarten, CONVERSATION. Ich bin mir nicht sicher, was das bedeutet. Ich habe es gegoogelt und das hat die Verwirrung noch verstärkt.
Was ist der Fehler, den Sie erhalten und an welchem Teil der Abfrage? –
Alle IF- und ELSE-IF-Anweisungen geben mir die EXPECTING CONVERSATION-Fehler. – bryanfm92