PostgreSQL – ALTERAR TABLA

En PostgreSQL , la estructura de una tabla existente se puede modificar mediante la instrucción ALTER TABLE.

Syntax: ALTER TABLE table_name action;

PostgreSQL admite las diversas acciones que se deben realizar con ALTER TABLE, como se indica a continuación:

  • Agregue una columna a una tabla existente como se muestra a continuación:
    ALTER TABLE table_name ADD COLUMN new_column_name TYPE;
  • Suelte una columna de una tabla existente como se muestra a continuación:
    ALTER TABLE table_name DROP COLUMN column_name;
  • Cambie el nombre de una columna de una tabla existente como se muestra a continuación:
    ALTER TABLE table_name RENAME COLUMN column_name TO new_column_name;
  • Cambie el valor predeterminado de una columna de una tabla existente como se muestra a continuación:
    ALTER TABLE table_name ALTER COLUMN column_name [SET DEFAULT value | DROP DEFAULT];
  • Cambie la restricción NOT NULL como se muestra a continuación:
    ALTER TABLE table_name ALTER COLUMN column_name [SET NOT NULL| DROP NOT NULL];
  • Agregue restricciones CHECK a una columna como se muestra a continuación:
    ALTER TABLE table_name ADD CHECK expression;
  • Agregue una restricción de la siguiente manera:
    ALTER TABLE table_name ADD CONSTRAINT constraint_name constraint_definition;
  • Cambie el nombre de una tabla existente como se muestra a continuación:
    ALTER TABLE table_name RENAME TO new_table_name;

Ahora veamos un ejemplo. Con el mismo propósito, primero creemos una tabla (digamos, enlaces) que podamos modificar en nuestro ejemplo usando la siguiente declaración:

CREATE TABLE links (
    link_id serial PRIMARY KEY,
    title VARCHAR (512) NOT NULL,
    url VARCHAR (1024) NOT NULL UNIQUE
);

Ejemplo:
en este ejemplo, insertaremos una nueva columna en la tabla de enlaces como se muestra a continuación:

ALTER TABLE links
ADD COLUMN active boolean;

La siguiente instrucción elimina la active columna de la links tabla:

ALTER TABLE links 
DROP COLUMN active;

Para cambiar el nombre de la title columna a link_title, utilice la siguiente instrucción:

ALTER TABLE links 
RENAME COLUMN title TO link_title;

La siguiente declaración agrega una nueva columna nombrada target a la links tabla:

ALTER TABLE links 
ADD COLUMN target VARCHAR(10);

Para establecer _blank como el valor predeterminado para la target columna de la links tabla, utilice la siguiente instrucción:

ALTER TABLE links 
ALTER COLUMN target
SET DEFAULT '_blank';

Si inserta la nueva fila en la links tabla sin especificar un valor para la columna de destino, la target columna tomará _blank como valor predeterminado. Para demostración, insertemos algunos datos de la siguiente manera:

INSERT INTO links (link_title, url)
VALUES('PostgreSQL Tutorial', 'https://www.geeksforgeeks.org/');

Consulta de datos de la tabla de enlaces:

SELECT * FROM links;

Producción:

Publicación traducida automáticamente

Artículo escrito por RajuKumar19 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *