BUG: Query UPDATE Fails with IGNORE_DUP_KEY SetID: Q105337
|
BUG# OS/2: 1777 (4.2a)
NT: 505 (4.2), 14895 (6.0/6.5)
On page 226 of the "Transact-SQL Reference" for SQL Server for Windows NT
(or page 69 of the "Language Reference Guide" for OS/2), it states:
If IGNORE_DUP_KEY is set and you give an UPDATE or INSERT statement that creates duplicate keys, the row that causes the duplicates is not added or changed. In fact, in the case of UPDATE , the row is discarded.
...However, if the UPDATE or INSERT attempt affects multiple rows, the other rows are added or changed as usual.
Microsoft has confirmed this to be a problem in SQL Server version 4.2 for OS/2 and Microsoft SQL Server versions 4.2, 6.0 and 6.5. We are researching this problem and will post new information here in the Microsoft Knowledge Base as it becomes available.
For example, table test (name char(10), age int NULL) has a unique
clustered key with IGNORE_DUP_KEY on column age:
Name Age
----------------------
karl 19
smith 20
johns 24
mary 25
update test
set age=age+4
where name not like "%johns%"
duplicate key was ignored
and
0 rows affected.
name age
--------------------
karl 23
johns 24
mary 29
Additional query words: update duplicates Windows NT
Keywords : kbprg SSrvServer SSrvWinNT
Version : 4.2a | 4.2 6.0 6.5
Platform : OS/2 WINDOWS
Issue type :
Last Reviewed: March 17, 1999