SQL

Cómo eliminar un índice en SQL Server con DROP INDEX

Estrada Web Group
jiestrada
Cómo eliminar un índice en SQL Server con DROP INDEX

Resumen: en este tutorial, aprenderás a usar la instrucción DROP INDEX de SQL Server para eliminar índices existentes.

Descripción general de la instrucción DROP INDEX de SQL Server

La instrucción DROP INDEX elimina uno o más índices de la base de datos actual. Esta es la sintaxis de la instrucción DROP INDEX:

DROP INDEX [IF EXISTS] index_name
ON table_name;

En esta sintaxis:

  • Primero, debes especificar el nombre del índice que deseas eliminar después de la cláusula DROP INDEX.
  • En segundo lugar, debes especificar el nombre de la tabla a la que pertenece el índice.

Eliminar un índice que no existe te dará como resultado un error. Sin embargo, puedes usar la opción IF EXISTS para descartar condicionalmente el índice y evitar el error.

Ten en cuenta que la opción IF EXISTS solo está disponible desde SQL Server 2016 (13.x) en adelante.

La instrucción DROP INDEX no elimina los índices creados con restricciones PRIMARY KEY o UNIQUE. Para descartar índices asociados con estas restricciones, debes utilizar la instrucción ALTER TABLE DROP CONSTRAINT.

Para eliminar varios índices de una o más tablas al mismo tiempo, debes especificar una lista de nombres de índice separados por comas con los nombres de tabla correspondientes después de la cláusula DROP INDEX, como se muestra en la siguiente consulta:

DROP INDEX [IF EXISTS]
    index_name1 ON table_name1,
    index_name2 ON table_name2,
    ...;

Ejemplos de instrucciones DROP INDEX de SQL Server

Usaremos la tabla sales.customers de la base de datos de ejemplo.

SQL Server DROP INDEX

La siguiente imagen muestra los índices de la tabla sales.customers:

DROP INDEX SQL SERVER

A) Ejemplo: usar DROP INDEX de SQL Server para eliminar un índice

Este código utiliza la instrucción DROP INDEX para eliminar el índice ix_cust_email de la tabla sales.customers:

DROP INDEX IF EXISTS ix_cust_email
ON sales.customers;

Si revisas los índices de la tabla sales.customers, verás que se eliminó el índice ix_cust_email.

DROP INDEX de SQL Server para eliminar un índice

B) Ejemplo: eliminar varios índices con DROP INDEX de SQL Server

El siguiente ejemplo usa la instrucción DROP INDEX para eliminar los índices ix_cust_city, ix_cust_fullname de la tabla sales.customers:

DROP INDEX
    ix_cust_city ON sales.customers,
    ix_cust_fullname ON sales.customers;

La tabla sales.customers ahora no tiene un índice:

eliminar varios índices con DROP INDEX de SQL Server

En este tutorial, aprendiste a usar la instrucción DROP INDEX de SQL Server para eliminar uno o varios índices de una tabla.

Compartir artículo:

Más artículos geniales

¿Cómo agrupar registros en SQL Server con la cláusula GROUP BY?

¿Cómo agrupar registros en SQL Server con la cláusula GROUP BY?

En este tutorial, aprenderá a usar la cláusula GROUP BY de SQL Server para organizar las filas en grupos por una o más columnas.

Ver artículo completo
¿Cómo unir o concatenar dos o más columnas separadas por un espacio en SQL con CONCAT_WS?

¿Cómo unir o concatenar dos o más columnas separadas por un espacio en SQL con CONCAT_WS?

En este tutorial, aprenderá a usar la función CONCAT_WS() de SQL Server para unir varias cadenas junto con un separador, esta función solo esta disponible en SQL Server 2017 en adelante.

Ver artículo completo

Manténgase actualizado

Obtenga excelente contenido en su bandeja de entrada todas las semanas.
Solo contenido excelente, no compartimos su correo electrónico con terceros.
Subir al inicio de la pantalla ;