logo

Columna de eliminación de PostgreSQL

En esta sección, vamos a discutir cómo podemos soltar las columnas con la ayuda del ALTERAR TABLA dominio.

Comando COLUMNA DROP de PostgreSQL

Usaremos la condición DROP COLUMN en el comando ALTER TABLE para eliminar una columna de una tabla:

 ALTER TABLE table_name DROP COLUMN column_name; 

PostgreSQL eliminará automáticamente todas sus restricciones e índices, incluida la columna, mientras elimina una columna de una tabla, y cada condición de eliminación de columna está separada por un coma (,) .

No podemos eliminar aquellas columnas donde los otros objetos dependen de ellas y también se usan en otros objetos de la base de datos como disparadores, vistas, procedimientos almacenados, etc.

formato de cadena

Entonces, para eliminar esas columnas y todos sus objetos conectados, usaremos el CASCADA opción en el columna de caída comando de la siguiente manera:

 ALTER TABLE table_name DROP COLUMN column_name CASCADE; 

Si queremos eliminar una columna que no existe, PostgreSQL generará un problema. Agregaremos la condición SI EXISTE en el comando soltar columna para solucionar este error, como podemos ver en el siguiente comando:

 ALTER TABLE table_name DROP COLUMN IF EXISTS column_name; 

En el comando anterior, si eliminamos una columna que no existe, PostgreSQL generará un aviso en lugar de un error.

Usaremos el siguiente comando si necesitamos eliminar las distintas columnas de una tabla en un solo comando:

 ALTER TABLE table_name DROP COLUMN column_name_1, DROP COLUMN column_name_2; 

Ejemplos del comando DROP COLUMN de PostgreSQL

Veamos algunos ejemplos para entender el funcionamiento del ALTERAR COLUMNA DE CAÍDA DE TABLA dominio.

Entonces, crearemos tres tablas diferentes, como Producto, categorías y marca .

Columna de eliminación de PostgreSQL

En el diagrama anterior, cada Producto contiene solo uno marca , y cada marca puede tener varios productos. Cada producto está asignado a un categoría , y cada categoría puede tener varios productos.

Los siguientes comandos se utilizan para crear las tres tablas. (Categorías, Producto y Marca) :

Creando el Categorías tabla con la ayuda del siguiente comando:

descargar xvideoservicethief ubuntu 14.04
 CREATE TABLE Categories ( Cate_id serial PRIMARY KEY, Cate_name VARCHAR NOT NULL ); 

Producción

Después de ejecutar el comando anterior, recibiremos el siguiente mensaje; el Categorías Se ha creado la tabla.

Columna de eliminación de PostgreSQL

Creando el Producto tabla usando la siguiente declaración:

 CREATE TABLE Product ( Pro_id serial PRIMARY KEY, Pro_name VARCHAR NOT NULL, Brand_id INT NOT NULL, Cate_id INT NOT NULL, List_price DECIMAL NOT NULL, Model_year SMALLINT NOT NULL, FOREIGN KEY (Cate_id) REFERENCES Categories (Cate_id), FOREIGN KEY (Brand_id) REFERENCES Brand (Brand_id) ); 

Producción

Después de ejecutar el comando anterior, recibiremos el siguiente mensaje; el Producto Se ha creado la tabla.

Columna de eliminación de PostgreSQL

Creando el Marca tabla usando el siguiente comando:

 CREATE TABLE Brand ( Brand_id serial PRIMARY KEY, Brand_name VARCHAR NOT NULL ); 

Producción

Después de ejecutar el comando anterior, recibiremos el siguiente mensaje; el Marca Se ha creado la tabla.

bharti jha
Columna de eliminación de PostgreSQL

Además, creamos una vista basada en el Producto y Marca tablas de la siguiente manera:

 CREATE VIEW Product_info AS SELECT Pro_id, Pro_name, Brand_name FROM Product p INNER JOIN Brand B ON B .Brand_id = p.Brand_id ORDER BY Pro_name; 

Producción

Después de ejecutar el comando anterior, recibiremos el siguiente mensaje; el Información del producto Se ha creado la vista.

Columna de eliminación de PostgreSQL

Usaremos el siguiente comando si queremos eliminar el cate_id columna de la Producto mesa:

 ALTER TABLE Product DROP COLUMN cate_id; 

Producción

Después de ejecutar el comando anterior, recibiremos el siguiente mensaje; el cate_id columna caída desde el Producto mesa.

Columna de eliminación de PostgreSQL

Si queremos ver la tabla en psql, usaremos el siguiente comando

 Javatpoint=# d Product; 

Columna de eliminación de PostgreSQL

Como podemos ver en la captura de pantalla anterior, el comando anterior elimina el columna cate_id e incluye el cate_id columna en la restricción de clave externa.

Ahora intentaremos soltar el ID_marca columna de la Producto mesa.

 ALTER TABLE Product DROP COLUMN Brand_id; 

Una vez que ejecutamos el comando anterior, PostgreSQL generará el siguiente error:

Columna de eliminación de PostgreSQL

Afirmó que el información del producto la vista está usando la columna ID_marca del Producto mesa.

agregando cadenas java

Entonces, usaremos el cascada opción para eliminar tanto el ID_marca columna y Información del producto ver con la ayuda del siguiente comando:

 ALTER TABLE Product DROP COLUMN Brand_id CASCADE; 

Una vez que implementemos el comando anterior, aparecerá el siguiente aviso y suelte la columna en particular.

Columna de eliminación de PostgreSQL

Aquí, eliminaremos tanto el precio_lista y año_modelo columnas en un solo comando, y necesitamos usar el COLUMNA DE GOTA múltiple condiciones como lo hicimos a continuación:

 ALTER TABLE Product DROP COLUMN List_Price, DROP COLUMN Model_year; 

Producción

Después de ejecutar el comando anterior, aparecerá la siguiente ventana de mensaje: El Columnas List_price y Model_year han sido eliminados del Producto mesa.

Columna de eliminación de PostgreSQL

Si queremos ver que las operaciones anteriores funcionan bien o no, usaremos el Seleccionar dominio:

 Select * from Product ; 

Producción

Después de ejecutar el comando anterior, obtendremos el siguiente resultado:

Columna de eliminación de PostgreSQL