Skip to content

Instantly share code, notes, and snippets.

@killnine
Created December 12, 2014 19:03
Show Gist options
  • Save killnine/cd6436fb3fec466a4183 to your computer and use it in GitHub Desktop.
Save killnine/cd6436fb3fec466a4183 to your computer and use it in GitHub Desktop.
SQL Bug
/* Original Version */
UPDATE Task
SET
Comment = #Comment#,
TaskStatus = #Status#,
TaskState = #State#,
JobNumber = #JobNumber#,
ExternalJobNumber = #ExternalJobNumber#
WHERE TaskId = #TaskId#
IF @@ROWCOUNT=0
INSERT INTO Task(TaskId, MachineId, TaskStartTimeUtc, TaskEndTimeUtc, TaskStatus, TaskState, TaskDescription, ScheduledDateUtc, DefaultRunCode, Comment, JobNumber, ExternalJobNumber, IsDownTask)
VALUES(#TaskId#, #MachineId#, #TaskStartTimeUtc#, #TaskEndTimeUtc#, #Status#, #State#, #TaskDescription#, #ScheduledDateUtc#, #DefaultRunCode#, #Comment#, #JobNumber#, #ExternalJobNumber#, #IsDownTask#)
/* Modified Version -- Find the bug! */
UPDATE Task
SET
Comment = #Comment#,
TaskStatus = #Status#,
TaskState = #State#,
JobNumber = #JobNumber#,
ExternalJobNumber = #ExternalJobNumber#
WHERE TaskId = #TaskId# AND <![CDATA[(TaskStatus <> 65 AND TaskStatus <> 86 AND TaskStatus <> 66 AND TaskStatus <> 114)]]>
IF @@ROWCOUNT=0
INSERT INTO Task(TaskId, MachineId, TaskStartTimeUtc, TaskEndTimeUtc, TaskStatus, TaskState, TaskDescription, ScheduledDateUtc, DefaultRunCode, Comment, JobNumber, ExternalJobNumber, IsDownTask)
VALUES(#TaskId#, #MachineId#, #TaskStartTimeUtc#, #TaskEndTimeUtc#, #Status#, #State#, #TaskDescription#, #ScheduledDateUtc#, #DefaultRunCode#, #Comment#, #JobNumber#, #ExternalJobNumber#, #IsDownTask#)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment