Manipulación de tablas en PostgreSQL

Por: Nediam <[email protected]>

Fecha de publicación: 2005-12-05



Nota: Los ejemplos aquí mostrados fueron probados en PostgreSQL 8.0.1.

A partir de la siguiente tabla de ejemplo:

bd_ejemplo=> d tbl_usuarios

Table “public.tbl_usuarios”

Column | Type | Modifiers

---------------------+-------------------------+--------------------

login | character varying(10) | not null

pass | character varying(34) | not null

nombre | character varying(40) | not null

paterno | character varying(30) | not null

materno | character varying(30) | not null

sexo | smallint |

correo | character varying(35) | not null

id_pais | character(2) | not null

estado | character varying(40) | not null

ciudad | character varying(40) | not null

id_status | smallint | not null default 1

fecha_registro | character varying(19) | not null

observaciones | character varying(200) | not null

Indexes:

“tbl_usuarios_pkey” PRIMARY KEY, btree (login)

Foreign-key constraints:

“tbl_usuarios_id_pais_fkey” FOREIGN KEY (id_pais) REFERENCES tbl_paises(id_pais)

A continuación, se muestran ejemplos de sentencias SQL para:

  • Agregar una columna:

    bd_ejemplo=> ALTER TABLE tbl_usuarios ADD COLUMN id_estado CHAR(2);

  • Borrar una columna:

    bd_ejemplo=> ALTER TABLE tbl_usuarios DROP COLUMN estado;

  • Renombrar una columna:

    bd_ejemplo=> ALTER TABLE tbl_usuarios RENAME COLUMN login TO id_usuario;

  • Cambiar el tipo una columna:

    bd_ejemplo=> ALTER TABLE tbl_usuarios ALTER COLUMN correo TYPE VARCHAR(40);

  • No permitir que una columna acepte valores nulos:

    bd_ejemplo=> ALTER TABLE tbl_usuarios ALTER COLUMN sexo SET NOT NULL;

  • Quitarle la restricción de valores nulos a una columna:

    bd_ejemplo=> ALTER TABLE tbl_usuarios ALTER COLUMN ciudad DROP NOT NULL;

  • Asignarle un valor default a una columna:

    bd_ejemplo=> ALTER TABLE tbl_usuarios ALTER COLUMN id_pais SET DEFAULT ‘MX’;

  • Quitarle su valor default a una columna:

    bd_ejemplo=> ALTER TABLE tbl_usuarios ALTER COLUMN id_status DROP DEFAULT;

  • Agregar una llave foránea:

    bd_ejemplo=> ALTER TABLE tbl_usuarios ADD FOREIGN KEY(id_status) REFERENCES tbl_status(id_status);

  • Remover una restricción (constraint):

    bd_ejemplo=> ALTER TABLE tbl_usuarios DROP CONSTRAINT tbl_usuarios_id_pais_fkey;

Para mayor información, consulta la documentación de PostgreSQL:

http://www.postgresql.org/docs/

La última versión de este documento está disponible en:

nediam.com.mx

Deja un comentario

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.