MS SQL Server Concepts and Programming Question:
Download Questions PDF

Does the UNIQUE Constraint Create an Index?

Answer:

If you add the UNIQUE constraint on a column, SQL Server will automatically add a non-clustered index for that column. The tutorial exercise below shows you the index created as part of the UNIQUE column, "id", of "ggl_links":

USE GlobalGuideLineDatabase;
GO

-- Drop the old table, if needed
DROP TABLE ggl_links;
GO

-- Create a table with a UNIQUE constraint
CREATE TABLE ggl_links (
id INT UNIQUE,
url VARCHAR(80) NOT NULL,
notes VARCHAR(1024),
counts INT,
created DATETIME NOT NULL DEFAULT(getdate())
);
GO

-- Create an index for column "url"
CREATE INDEX ggl_links_url ON ggl_links (url);
GO
<pre>-- View indexes
EXEC SP_HELP ggl_links;
GO
index_name index_description keys
----------------------- -------------------------- ----
ggl_links_url nonclustered located url
on PRIMARY

UQ__ggl_links__4222D4EF nonclustered, unique
key located on PRIMARY id</pre>
Notice that the index created as part of the UNIQUE constraint is named by SQL Server as "UQ__ggl_links__4222D4EF".

Download MS SQL Server Interview Questions And Answers PDF

Previous QuestionNext Question
Is the PRIMARY KEY Column of a Table an Index in MS SQL Server?What Is the Difference Between Clustered and Non-Clustered Indexes in MS SQL Server?