SQL

Cómo eliminar una columna en SQL Server con ALTER TABLE DROP COLUMN

Estrada Web Group
jiestrada
Cómo eliminar una columna en SQL Server con ALTER TABLE DROP COLUMN

Resumen: en este tutorial, aprenderás cómo usar la declaración ALTER TABLE DROP COLUMN de SQL Server para eliminar una o más columnas de una tabla existente.

Introducción a la declaración ALTER TABLE DROP COLUMN de SQL Server

ALTER TABLE en SQL Server también se puede utilizar para agregar una columna, modificar una columna, eliminar una columna, cambiar el nombre de una columna o cambiar el nombre de una tabla.

A veces, es necesario eliminar una o más columnas obsoletas o sin usar de una tabla en SQL Server. Para hacer esto, usa la declaración ALTER TABLE DROP COLUMN de la siguiente manera:

ALTER TABLE table_name
DROP COLUMN column_name;

En esta sintaxis tenemos lo siguiente:

  • Primero, se especifica el nombre de la tabla a la que deseas eliminar la columna.
  • En segundo lugar, especifica el nombre de la columna que deseas eliminar.

Ten en cuenta que si la columna que deseas eliminar tiene una restricción CHECK (CHECK Constraint), primero debes eliminar la restricción antes de eliminar la columna. Además, SQL Server no permite eliminar una columna que tenga una CLAVE PRINCIPAL (PRIMARY KEY) o una CLAVE EXTERNA (FOREIGN KEY).

Si deseas eliminar varias columnas a la vez, debes usar la siguiente sintaxis:

ALTER TABLE table_name
DROP COLUMN column_name_1, column_name_2,...;

En esta sintaxis, se especifican las columnas que deseas descartar como una lista de columnas separadas por comas en la cláusula DROP COLUMN.

Ejemplos de ALTER TABLE DROP COLUMN de SQL Server

Vamos a crear una nueva tabla con CREATE TABLE llamada sales.price_lists para los ejemplos en la base de datos de pruebas que puedes descargar aquí.

CREATE TABLE sales.price_lists(
    product_id int,
    valid_from DATE,
    price DEC(10,2) NOT NULL CONSTRAINT ck_positive_price CHECK(price >= 0),
    discount DEC(10,2) NOT NULL,
    surcharge DEC(10,2) NOT NULL,
    note VARCHAR(255),
    PRIMARY KEY(product_id, valid_from)
);

La siguiente instrucción elimina la columna de note de la tabla price_lists:

ALTER TABLE sales.price_lists
DROP COLUMN note;

La columna price tiene una restricción CHECK, por lo tanto, no puedes eliminarla. Si intentas ejecutar la siguiente declaración, obtendrás un error:

ALTER TABLE sales.price_lists
DROP COLUMN price;

Este sería el mensaje de error:

The object 'ck_positive_price' is dependent on column 'price'.

Para eliminar la columna de precio, primero, elimina la restricción CHECK:

ALTER TABLE sales.price_lists
DROP CONSTRAINT ck_positive_price;

Y luego, elimina la columna de price:

ALTER TABLE sales.price_lists
DROP COLUMN price;

El siguiente ejemplo elimina dos columnas discount y surcharge a la vez:

ALTER TABLE sales.price_lists
DROP COLUMN discount, surcharge;

En este tutorial, aprenderás cómo usar la declaración ALTER TABLE DROP COLUMN de SQL Server para eliminar una o más columnas de una tabla existente

 

 

Compartir artículo:

Más artículos geniales

Aprende a utilizar las condiciones con la cláusula WHERE de SQL

Aprende a utilizar las condiciones con la cláusula WHERE de SQL

La cláusula WHERE de SQL se utiliza para especificar una condición al recuperar un conjunto de datos de una tabla o de un conjunto de tablas.

Ver artículo completo
¿Cómo obtener la cantidad de registros en SQL Server con la función COUNT()?

¿Cómo obtener la cantidad de registros en SQL Server con la función COUNT()?

En este tutorial, aprenderás a usar la función COUNT() de SQL Server para obtener la cantidad de elementos en un conjunto.

Ver artículo completo
Cómo unir una tabla a sí misma con Self Join de SQL Server

Cómo unir una tabla a sí misma con Self Join de SQL Server

Resumen: en este tutorial, aprenderás a utilizar Self Join de SQL Server para unir una tabla a sí misma.

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 ;