sql >> Base de Datos >  >> RDS >> Mysql

¿Puedo tener una clave principal sin índice agrupado? ¿También puedo tener un índice agrupado multivalor?

(Esta respuesta es solo para SQL Server 2005+. No sé nada sobre MySQL).

Sí. Como mencionó, una restricción de clave principal está respaldada por un índice agrupado de forma predeterminada. Puede decirle a SQL Server que respalde la restricción con un índice no agrupado declarando la restricción de la siguiente manera:

ALTER TABLE MyTable
    ADD CONSTRAINT PK_MyTable
        PRIMARY KEY NONCLUSTERED(Col1);

Sí, puede definir un índice con más de una columna en la clave de índice. Realmente no es diferente a un índice no agrupado.

CREATE UNIQUE CLUSTERED INDEX IX_MyTable_Clus
    ON MyTable(Col1, Col2, Col3);

Referencias:ALTER TABLE , CREATE INDEX