PostgreSQL ALTER TABLE: añadir o eliminar columnas
Puedes usar el comando ALTER TABLE para personalizar tablas en PostgreSQL. El comando se utiliza con una acción para, por ejemplo, añadir o modificar columnas.
¿Qué es PostgreSQL ALTER TABLE
?
El comando ALTER TABLE
se utiliza en PostgreSQL para modificar tablas existentes. Se puede usar para añadir o eliminar una columna o para personalizarla según tus propias necesidades. Además, PostgreSQL ALTER TABLE
se utiliza para establecer o eliminar restricciones para una tabla en el sistema gestor de base de datos. Para lograr el resultado deseado, se debe especificar el comando con una acción.
- Tu propio servidor en un hardware dedicado
- Integración en el cloud y facturación por minuto
- Respaldados por procesadores Intel® Xeon® y AMD
ALTER TABLE
: sintaxis
Para una comprensión básica, vale la pena echar un vistazo a la sintaxis básica de ALTER TABLE
. Es la siguiente:
ALTER TABLE nombre_de_la_tabla acción;
postgresqlEl comando real es seguido por el nombre de la tabla en la que se quiere realizar cambios. A continuación, especifica el comando PostgreSQL ALTER TABLE
con la acción deseada.
Para crear una nueva tabla, utiliza el comando CREATE TABLE en PostgreSQL.
PostgreSQL ALTER TABLE
: ejemplos
En las siguientes secciones, se muestran ejemplos prácticos para ilustrar cómo funciona ALTER TABLE
. Para ello, se ha creado una tabla de ejemplo con el nombre “Clientes”, que inicialmente contiene tres columnas y tres filas. Su aspecto es el siguiente:
ID | Nombre | Ciudad |
---|---|---|
1 | Sánchez | Madrid |
2 | Morales | Barcelona |
3 | Simón | Alicante |
Esto ahora se puede personalizar de varias maneras con ALTER TABLE
en PostgreSQL.
Añadir columna con PostgreSQL ADD COLUMN
Para añadir una columna adicional, utiliza ALTER TABLE
en combinación con PostgreSQL ADD COLUMN
. Esta acción tiene dos parámetros: el nombre de la columna y el tipo de datos de la columna. La sintaxis es la siguiente:
ALTER TABLE nombre_de_tabla ADD COLUMN nombre_de_columna tipo_datos;
postgresqlSi queremos añadir una columna para la dirección a nuestra tabla “Clientes”, utilizamos PostgreSQL ADD COLUMN
de la siguiente manera:
ALTER TABLE Clientes ADD COLUMN Dirección VARCHAR(255);
postgresqlLa nueva tabla ampliada tiene ahora el siguiente aspecto:
ID | Nombre | Ciudad | Dirección |
---|---|---|---|
1 | Sánchez | Madrid | NULL |
2 | Morales | Barcelona | NULL |
3 | Simón | Alicante | NULL |
Borrar columnas con DROP COLUMN
Se procede de forma muy similar si queremos eliminar una columna de la tabla existente. Para ello, utilizamos PostgreSQL ALTER TABLE
en combinación con la acción DROP COLUMN
. Esta acción tiene como único parámetro el nombre de la columna. Esta es la sintaxis:
ALTER TABLE nombre_de_tabla DROP COLUMN nombre_de_columna;
postgresqlPara eliminar la columna “Ciudad”, utilizamos este código:
ALTER TABLE clientes DROP COLUMN ciudad;
postgresqlLa tabla ahora solo consta de tres columnas:
ID | Nombre | Dirección |
---|---|---|
1 | Sánchez | NULL |
2 | Morales | NULL |
3 | Simón | NULL |
Renombrar columnas con RENAME COLUMN
También se puede renombrar una columna existente, lo que puede ser una buena alternativa a borrar o añadir nuevas columnas. La sintaxis de RENAME COLUMN
dentro de ALTER TABLE
es la siguiente:
ALTER TABLE nombre_de_tabla RENAME COLUMN nombre_de_columna TO nuevo_nombre;
postgresqlAquí convertimos la columna “Nombre” en la columna “Nombre cliente”:
ALTER TABLE clientes RENAME COLUMN nombre TO nombre_cliente;
postgresqlEn nuestra tabla, solo cambia el nombre de la columna como deseamos:
ID | Nombre cliente | Dirección |
---|---|---|
1 | Sánchez | NULL |
2 | Morales | NULL |
3 | Simón | NULL |
Otras acciones para PostgreSQL ALTER TABLE
Hay muchas otras acciones que puedes utilizar junto con ALTER TABLE
. Estas son las más importantes:
Para cambiar el tipo de datos de una columna:
ALTER TABLE nombre_de_tabla ALTER COLUMN nombre_de_columna TYPE tipo_datos;
postgresqlPara especificar que una columna debe recibir un valor:
ALTER TABLE nombre_de_tabla ALTER COLUMN nombre_de_columna SET NOT NULL;
postgresqlPara establecer restricciones como UNIQUE
o PRIMARY KEY
para una columna, utiliza PostgreSQL ALTER TABLE
en combinación con la acción ADD CONSTRAINT
:
ALTER TABLE nombre_de_tabla ADD CONSTRAINT nombre_de_restricción definición_de_restricción;
postgresql