Dan, I haven't tried this myself. I thought if you name your constraint, then I thought that name becomes the name of the backing index. But when I check the documentation of CREATE INDEX, it has following information which seems to say that backing index name is always system generated irrespective of you named your constraint or not. Maybe someone else knows the exact answer but in the meantime, you might want to try it yourself using following query to see what is the name of the backing index for a named constraint. Hope this helps a little.
Unique, primary key, and foreign key constraints generate indexes that enforce or "back" the constraint (and are thus sometimes called backing indexes
). If a column or set of columns has a UNIQUE or PRIMARY KEY constraint on it, you can not create an index on those columns.
has already created it for you with a system-generated name. System-generated names for indexes that back up constraints are easy to find by querying the system tables if you name your constraint. For example, to find out the name of the index that backs a constraint called FLIGHTS_PK:
SELECT CONGLOMERATENAME FROM SYS.SYSCONGLOMERATES,
SYS.SYSCONGLOMERATES.TABLEID = SYSCONSTRAINTS.TABLEID
AND CONSTRAINTNAME = 'FLIGHTS_PK'