En esta guía, veremos cómo alterar una tabla PostgreSQL y agregar una columna.
Uso básico
Para agregar una columna a una tabla, primero debemos especificar la "consulta alter" seguida del nombre de la tabla.
Podemos expresar la sintaxis general para agregar una columna como:
Alter tabla_name Agregar columna si no existe column_name data_typeEn la sintaxis representada anteriormente, comenzamos llamando a la consulta de la tabla Alter seguido del nombre de la tabla a la que queremos agregar la columna. A continuación, especifique el nombre de la columna después de la instrucción Agregar columna.
Aunque la instrucción si no existe es opcional, puede ser una forma útil de evitar errores si existe una columna con un nombre similar.
Finalmente, especificamos el tipo de datos de la columna y las restricciones de la columna.
También puede agregar varias columnas especificando su nombre, tipo de datos y restricciones una tras otra (separadas por comas).
NOTA: PostgreSQL agrega cualquier columna nueva al final de la tabla, ya que no tiene un método para especificar la posición de la columna. Por lo tanto, para crear un nuevo diseño de columna en una tabla PostgreSQL, debe recrear la nueva tabla o usar una vista.
Ejemplos
Agreguemos una columna a la tabla de la ciudad en la base de datos de Sakila.
Alter TABLE CITY ADD COLUMN CITY_CODE VARCHAR (20);La consulta anterior agrega la columna City_code a la tabla de la ciudad. Puede verificar utilizando la instrucción Seleccionar como:
Seleccionar * del límite de la ciudad 5;Como se muestra en la captura de pantalla a continuación, la consulta anterior debe devolver los registros en la tabla de la ciudad con la nueva columna:
Para agregar varias columnas simultáneamente, especifique los valores de la columna en una lista como:
Alteran la ciudad de la tablaLa consulta anterior debe agregar tres columnas secuencialmente como se especifica. El orden de agregar las columnas a la tabla es como se especifica.
Por ejemplo, en la consulta anterior, la columna de población vendrá ante las calles.
En los ejemplos anteriores, todas las columnas agregadas contienen valores nulos. Para especificar el valor de un marcador de posición, podemos usar la palabra clave predeterminada.
Considere la columna del código de la ciudad. Comencemos soltando la columna.
Alter TABLE CITY Drop Column City_code;A continuación, agregue la columna con la palabra clave Agregar columna; El valor predeterminado está en la consulta a continuación:
NOTA: La columna City_Code estará al final de la tabla.
Altertable City AddColumnCity_CodeVarchar (20) predeterminado 'aa';En el ejemplo anterior, PostgreSQL utilizará el valor predeterminado especificado para completar los valores de la columna City_Code.
El uso del valor predeterminado especificado puede ser útil cuando la columna tiene una restricción no nula.
Agregar una columna puede tomar cualquier tipo de datos PostgreSQL compatible. Por ejemplo, lo siguiente contiene una columna de valores booleanos.
Alter stable city add column si no existe is_active boolean no nulo predeterminado verdadero;NOTA: Dado que PostgreSQL agregará valores nulos a una columna si no se especifican valores predeterminados, es bueno agregar un valor predeterminado. Si no, PostgreSQL devolverá un error!
Por ejemplo, podemos crear una tabla como:
Alter TABLE CITY DROP COLUMNE NO_NULLEn este caso, obtendremos un SQL State 23502.
Error: columna "no_null" de la relación "ciudad" contiene valores nulosSQL State 23502 indica que la operación (actualizar, establecer o insertar es nula pero el objeto no acepta valores nulos).
Conclusión
Este tutorial lo ha guiado a través de cómo usar y trabajar con la consulta de columna Agregar en PostgreSQL, lo que le permite agregar columnas a una tabla existente.