It determines what happens when you insert duplicates only
See ALTER TABLE..index option
Specifies the error response when an
insert operation attempts to insert
duplicate key values into a unique
index. The IGNORE_DUP_KEY option
applies only to insert operations
after the index is created or rebuilt.
The option has no effect when
executing CREATE INDEX, ALTER INDEX,
or UPDATE.
..and it does not apply to PKs
The BOL comment for ALTER TABLE about this and "backwards compatibility" is somewhat confusing. I just tried it and BradC is correct.
CREATE TABLE dbo.foo (bar int PRIMARY KEY WITH (FILLFACTOR=90, IGNORE_DUP_KEY = ON))
GO
INSERT dbo.foo VALUES (1)
GO
INSERT dbo.foo VALUES (1)
GO
--gives
(1 row(s) affected)
Duplicate key was ignored.
(0 row(s) affected)