FIX: Job Step Fails if First INSERT of Batch Job Encounters a Msg 3604 Error (295032)
The information in this article applies to:
- Microsoft SQL Server 2000 (all editions)
- Microsoft SQL Server 7.0
This article was previously published under Q295032
BUG #: 351328 (SHILOH_BUGS)
BUG #: 100729 (SQLBUG_70)
SYMPTOMS
If a job contains a single INSERT statement on a table that has a unique index with the IGNORE_DUP_KEY clause, and the INSERT violates the uniqueness property of the index, the corresponding row is not inserted in the table. The job step fails, and you see the following message in the job step history:
Duplicate key was ignored. [SQLSTATE 23000] (Message 3604). The step failed.
Because the table has an UNIQUE INDEX with IGNORE_DUP_KEY, the INSERT statement should be ignored and the step should succeed.
RESOLUTIONTo resolve this problem, obtain the latest service pack for SQL Server 2000. For additional information, click the following article number to view the article in the
Microsoft Knowledge Base:
290211 INF: How to Obtain the Latest SQL Server 2000 Service Pack
WORKAROUND
If you place a "dummy" SELECT statement that always executes successfully (such as SELECT 1) just before the INSERT statement that fails with the 3604 error, the step succeeds. This is demonstrated in the "More Information" section.
STATUSMicrosoft has confirmed that this is a problem in the Microsoft products that are listed at the beginning of this article. This problem was first corrected in SQL Server 2000 Service Pack 1.
Modification Type: | Major | Last Reviewed: | 10/28/2003 |
---|
Keywords: | kbBug kbfix kbSQLServ2000sp1fix KB295032 |
---|
|