You are on page 1of 42

Tipos de Datos usados en PostgreSQL

Nombre

Alias

bigint

int8

bigserial

serial8

bit [ (n) ]
bit varying [ (n) ]

varbit

boolean

bool

box
bytea
character varying [ (n) ]

varchar [ (n) ]

character [ (n) ]

char [ (n) ]

cidr
circle
date
double precision

float8

inet
integer

int,int4

interval [ fields ] [ (p) ]


line
lseg
macaddr
money
numeric [ (p, s) ]

decimal [ (p, s) ]

path
point
polygon
real

float4

smallint

int2

serial

serial4

text
time [ (p) ] [ without time zone ]
time [ (p) ] with time zone

timetz

timestamp [ (p) ] [ without time zone ]


timestamp [ (p) ] with time zone
tsquery
tsvector
txid_snapshot
uuid
xml

timestamptz

s de Datos usados en PostgreSQL


Descripcion
enteroconsignodeochobytes
enteroautoincrementaldeochobytes
cadenadebitsdelongitudfija
cadenadebitsdelongitudvariable
Booleanolgico(verdadero/falso)
rectnguloenunplano
datosbinarios("arreglodebytes")
cadenadecaracteresdelongitudvariable
cadenadecaracteresdelongitudfija
direccinderedIPv4oIPv6
circuloenunplano
fechadecalendario(ao,mes,da)
nmerodepuntoflotantedeprecisindoble(8bytes)
direccindeequipodeIPv4oIPv6
enteroconsignodecuatrobytes
lapsodetiempo
lineainfinitaenunplano
segmentodelineaenunplano
DireccinMAC(MediaAccessControl)
importemonetario
numricoexactodeprecisinseleccionable
caminogeomtricoenunplano
puntogeomtricoenunplano
caminocerradogeomtricoenunplano
nmerodepuntoflotantedeprecisinsimple(4bytes)
enteroconsignodedosbytes
enteroautoincrementaldecuatrobytes
cadenadecaracteresdelongitudvariable
horadelda(sinzonahoraria)
goradelda,incluyendozonahoraria
fechayhora(sinzonahoraria)
fechayhora,incluyendozonahoraria
consultadebsquedadetexto
documentodebsquedadetexto
instantneadeIDdetransaccinaniveldeusuario
identificadoruniversalmentenico
datosXML

http://www.postgresql.org.ar/trac/wiki/dat

resql.org.ar/trac/wiki/datatype.html

Las sentencias SQL se dividen en dos categoras; Lenguaje de definici


language (DML).

1.Lenguaje de definicin de datos (DDL)


Las sentencias DDL se utilizan para crear y modificar la estructura de las tablas
CREATE - para crear objetos en la base de datos.
ALTER - modifica la estructura de la base de datos.
DROP - borra objetos de la base de datos.
TRUNCATE - elimina todos los registros de la tabla, incluyendo todos los

2.Lenguaje de manipulacin de datos (DML)


Las sentencias de lenguaje de manipulacin de datos (DML) son utilizadas para
SELECT - para obtener datos de una base de datos.
INSERT - para insertar datos a una tabla.
UPDATE - para modificar datos existentes dentro de una tabla.
DELETE - elimina todos los registros de la tabla; no borra los espacios as

INSTRUCCIN
crear tabla nombreTabla sin tipos de
datos

crear tabla t_paciente con pk y sin fk

crearla tabla t_paciente con pk y con fk

crearla tabla t_paciente con pk y sin fk

crearla tabla t_ciudad1 con dos pk

crearla tabla t_paciente con dos pk y


dos fk de una misma tabla

crearla tabla t_paciente con dos pk y


dos fk de una misma tabla y una de otra
tabla

crear tabla reflexiva oon un CONSTRAIN


UNIQUE

POSTGRESQL
SINTXIS
create table NOMBRETABLA1 ()

create table NOMBRETABLA1


(
PKEYcampoTabla1 tipo NOT NULL,
campo1
tipo1,

campoN
tipoN,
PRIMARY KEY (PKEYcampoTabla1)
)

create table NOMBRETABLA1


(
PKEYcampoTabla1
tipo NOT NULL,
campo1
tipo1,

campoN
tipoN,
FKEYcampoTabla1
tipo,
PRIMARY KEY (PKEYcampoTabla1),
CONSTRAINT nombreRestriccion FOREIGN KEY (FKEYcampoTabla1)
REFERENCES nombreTabla2 (PKEYcampoTabla2)
)

create table NOMBRETABLA1


(
PKEYcampoTabla1 tipo NOT NULL,
campo1
tipo1,

campoN
tipoN,
PRIMARY KEY (PKEYcampoTabla1)
)

create table NOMBRETABLA1


(
PKEYcampoTabla1 tipo NOT NULL,
campo1
tipo1,

campoN
tipoN,
PRIMARY KEY (PKEYcampoTabla1, PKEY campoTabla1)
)

create table NOMBRETABLA1


(
PKEY1campoTabla1
tipo NOT NULL,
PKEY2campoTabla1
tipo NOT NULL,
campo1
tipo1,

campoN
tipoN,
FKEY1campoTabla1
tipo,
FKEY2campoTabla1
tipo,
PRIMARY KEY (PKEY1campoTabla1, PKEY2campoTabla1),
CONSTRAINT nombreRestriccion FOREIGN KEY (FKEY1campoTabla1, FKEY2campoTabla1)
REFERENCES nombreTabla2 (PKEY1campoTabla2,PKEY2campoTabla2)
)

create table NOMBRETABLA1


(
PKEY1campoTabla1
tipo NOT NULL,
PKEY2campoTabla1
tipo NOT NULL,
campo1
tipo1,

campoN
tipoN,
FKEY1campoTabla1
tipo,
FKEY2campoTabla1
tipo,
FKEY3campoTabla1
tipo,
PRIMARY KEY (PKEY1campoTabla1, PKEY2campoTabla1),
CONSTRAINT nombreRestriccion1 FOREIGN KEY (FKEY1campoTabla1, FKEY2campoTabla1)
REFERENCES nombreTabla2 (PKEY1campoTabla2,PKEY2campoTabla2)
CONSTRAINT nombreRestriccion2 FOREIGN KEY (FKEY3campoTabla1)
REFERENCES nombreTabla3 (PKEYcampoTabla3)
)

create table NOMBRETABLA1


(
PKEYcampoTabla1 tipo NOT NULL,
campo1
tipo1,

campoN
tipoN,
PRIMARY KEY (PKEYcampoTabla1, PKEY campoTabla1)
)

RESQL
EJERCICIO
create table t_paciente
()
create table t_paciente
(
cedula
integer
NOT NULL,
nombre
character varying(60),
apellido
character varying(60),
direccion
character varying(30),
barrio
character varying(20),
genero
character(1),
fechanac
date,
fk_id_ciudad integer,
PRIMARY KEY (cedula)
)

create table t_paciente


(
cedula
integer
NOT NULL,
nombre
character varying(60),
apellido
character varying(60),
direccion
character varying(30),
barrio
character varying(20),
genero
character(1),
fechanac
date,
fk_id_ciudad integer,
PRIMARY KEY (cedula),
CONSTRAINT fk_paciente_ciudad FOREIGN KEY (fk_id_ciudad)
REFERENCES t_ciudad (id)
)
CREATE TABLE t_paciente
(
cedula
integer
NOT NULL,
nombre
character varying(60),
apellido
character varying(60),
direccion
character varying(30),
barrio
character varying(20),
genero
character(1),
fechanac
date,
PRIMARY KEY (cedula)
)

CREATE TABLE t_ciudad1


(
id
integer
NOT NULL,
ciudad
character varying(60),
PRIMARY KEY (id, ciudad)
)

CREATE TABLE paciente1


(
id
serial NOT NULL,
nombre
character varying(60),
fk_id_ciudad1
integer,
fk_ciudad_ciudad1 character varying(60),
PRIMARY KEY (id,nombre),
CONSTRAINT fk_paciente_ciudad1
FOREIGN KEY
REFERENCES t_ciudad1(id, ciudad)
)

(fk_id_ciudad1, fk_ciudad_ciudad1)

CREATE TABLE t_paciente1


(
id
serial
NOT NULL,
nombre
character varying(60),
fk_id_ciudad1
integer,
fk_ciudad_ciudad1 character varying(60),
fk_id_ingreso1
integer,
PRIMARY KEY (id),
CONSTRAINT fk_paciente1_ingreso1
FOREIGN KEY (fk_id_ingreso1)
REFERENCES t_ingreso1 (id),
CONSTRAINT fk_paciente_ciudad1
FOREIGN KEY (fk_id_ciudad1, fk_ciudad_ciudad1)
REFERENCES t_ciudad1 (id, ciudad)
)

CREATE TABLE t_medico


(
id serial NOT NULL,
nombre
character varying(60) NOT NULL,
apellido
character varying(60) NOT NULL,
direccion
character varying(60),
correoe
character varying(30),
telefono
character varying(20),
cedula
integer NOT NULL,
fk_id_jefemedico
integer,
fk_id_barrio integer,
PRIMARY KEY (id),
CONSTRAINT fk_medico_medico FOREIGN KEY (fk_id_jefemedico)
REFERENCES t_medico (id),
CONSTRAINT fk_medico_barrio FOREIGN KEY (fk_id_barrio)
REFERENCES t_barrio (id),
CONSTRAINT uniq_cedula UNIQUE (cedula)
)

EJEMPLOS CREACIN DE TABLAS


tabla:

t_ciudad
Campo

id
ciudad

Tipo
serial
character varying

Tamao Restriccin
pk
50

CREATE TABLE t_ciudad


Crear tabla con tipo (
id
serial
NOT NULL,
de datos serial y
ciudad character varying(50),
character varying
PRIMARY KEY (id)
con pk
);

tabla:

t_paciente
Campo

cedula
nombre
apellido
direccion
barrio
genero
fechanac
fk_id_ciudad

Tipo
integer
character varying
character varying
character varying
character varying
character(1)
date
integer

Tamao Restriccin
pk
60
60
30
20

fk

CREATE TABLE t_paciente


(
cedula
integer
NOT NULL,
nombre
character varying(60),
apellido
character varying(60),
direccion
character varying(30),
Crear tabla con tipo
barrio
character varying(20),
de datos integer,
genero
character(1),
character(1) y date
fechanac
date,
con pk y fk
fk_id_ciudad integer,
PRIMARY KEY (cedula),
CONSTRAINT fk_paciente_ciudad FOREIGN KEY (fk_id_ciudad)
REFERENCES t_ciudad (id)
);

tabla:
Campo
id_telefono
numero

t_telefonos
Tipo
serial
integer

Restriccin
pk

fk_telefono_paciente

integer

fk

CREATE TABLE t_telefono


(
id
serial
NOT NULL,
Crear tablas con
numero integer,
tipos de datos, PK y PRIMARY KEY (id),
CONSTRAINT fk_telefono_paciente FOREIGN KEY (id)
FK
REFERENCES t_paciente (cedula)
);

tabla:

t_ingreso
Campo

id
estado
fechayhora
seguridadsoc
fk_cedula_paciente

Tipo
integer
text
timestamp without time zone
character varying
integer

Tamao Restriccin
pk

20
fk

CREATE TABLE t_ingreso


(
id
serial
NOT NULL,
Crear tabla con tipo
estado
text,
de datos text,
fechayhora
timestamp without time zone,
timestamp without
seguridadsoc character varying(20),
time zone con pk y
fk_cedula_paciente integer,
fk
PRIMARY KEY (id),
CONSTRAINT
fk_ingreso_paciente FOREIGN KEY (fk_cedula_paciente
REFERENCES t_paciente (cedula)
);

tabla:

t_sala
Campo

id
nombre
descripcion
piso

Tipo
integer
character varying
character varying
integer

Tamao Restriccin
pk
60
100

CREATE TABLE t_sala


(
id
serial
NOT NULL,
Crear tablas con
nombre
character varying(30),
tipos de datos y PK
descripcion character varying(60),
piso
integer,
PRIMARY KEY (id)
);
tabla:

t_habitacion
Campo

id
nombre
numero
descripcion
fk_habitacion_sala

Tipo
serial
character varying
integer
character varying
integer

Tamao Restriccin
pk
60
pk
200
fk

CREATE TABLE t_habitacion


(
id
serial
NOT NULL,
nombre
character varying(60) NOT NULL,
Crear tablas con
numero
integer,
tipos de datos con 2
descripcion character varying(200),
PK y FK
fk_habitacion_sala integer,
PRIMARY KEY (id, nombre),
CONSTRAINT
fk_habitacion_sala FOREIGN KEY (id)
REFERENCES t_sala (id)
);

tabla:

t_cama
Campo

id
estado
descripcion
fk_cama_habitacion_id
fk_cama_habitacion_n

Tipo
integer
character varying
character varying
integer
character varying

Tamao Restriccin
pk
30
200
fk
fk

CREATE TABLE t_cama


(
id
serial
NOT NULL,
estado
character varying(30),
Crear tablas con
descripcion
character varying(200),
tipos de datos con
fk_id_habitacion
integer,
PK y 2 FK de la
fk_nombre_habitacion character varying(60),
misma tabla
PRIMARY KEY (id),
CONSTRAINT fk_cama_habitacion FOREIGN KEY (fk_id_habitacion, fk_nom
REFERENCES t_habitacion (id, nombre)
);

tabla:

t_medico
Campo

id
nombre
apellido
direccion
barrio
genero
telefono
f_nacimiento
correoe
fk_id_ciudad
fk_id_jefemedico
fk_id_sala

Tipo
serial
character
character
character
character
character
integer
date
character
integer
integer
integer

varying
varying
varying
varying

varying

Tamao Restriccin
pk
60
60
60
30
1

30
fk
fk
fk

CREATE TABLE t_medico


(
id
serial
NOT NULL,
nombre
character varying(60),
apellido
character varying(60),
direccion
character varying(60),
barrio
character varying(30),
genero
character (1),
telefono
integer,
Crear tablas con
f_nacimiento
date,
tipos de datos con
correoe
character varying(30),
PK y 2 FK de la
fk_id_ciudad
integer,
misma tabla
fk_id_jefemedico
integer,
fk_id_sala
integer,
PRIMARY KEY (id),
CONSTRAINT
fk_medico_ciudad FOREIGN KEY (fk_id_ciudad)
REFERENCES t_ciudad (id),
CONSTRAINT
fk_medico_medico FOREIGN KEY (fk_id_jefemedico)
REFERENCES t_medico (id),
CONSTRAINT
fk_medico_sala FOREIGN KEY (fk_id_sala)
REFERENCES t_sala (id)
);

DE TABLAS

Descripcin
llave primaria

Descripcin
llave primaria

ciudad de CIUDAD

d_ciudad)

Descripcin
llave primaria

cedula de PACIENTE

Descripcin
llave primaria

cedula de PACIENTE

e,

GN KEY (fk_cedula_paciente)

Descripcin
llave primaria

Descripcin
llave primaria
llave primaria

llave fornea

L,

N KEY (id)

Descripcin
llave primaria

llaves fornea
llaves fornea

NULL,
ing(30),
ng(200),

0),

KEY (fk_id_habitacion, fk_nombre_habitacion)

Descripcin
llave primaria

llaves fornea
llaves fornea
llaves fornea

OT NULL,
ying(60),
ying(60),
ng(60),
ying(30),

ing(30),

KEY (fk_id_ciudad)

N KEY (fk_id_jefemedico)
(fk_id_sala)

time without time zone

id de SALA

id de HABITACION
nombre de HABITACION

id de CIUDAD
id de MEDICO
id de SALA

INSTRUCCIN
Modificar la tabla adicionando un campo con tipo sin nulidad.
Modificar la tabla adicionando una columna con tipo y nulidad
Modificar la tabla cambiando un NULL a un campo NOT NULL.
Modificar la tabla cambiando un NOT NULL a un campo NULL.
Modificar la tabla modificando un tipo de campo.
Modificar la tabla modificando el campo fk con la referencia de la
tabla del FKEY.
Modificar la tabla modificando el campo pk como la llave primaria
PKEY.

Modificar la tabla modificando un campo con la restriccin


UNIQUE.
Modificar la tabla modificando un campo con la restriccin CHECK.
Borrar un campo a la tabla. Que NO tienen relacin con otras
tablas.
Borrar el campo PK o de una FK a una tabla. Que este campo PKEY
SI tienen relacin con otras tablas.
Borrar una tabla que NO tienen relacin con otras tablas.

Borrar una tabla que SI tienen relacin con otras tablas.

Modificar una tabla para renombrar el nombre de una columna


Modificar una tabla para renombrarla.Todas las relaciones que
tenga esta tabla quedarn con el nuevo nombre

Elimina todas filas de la tabla, es decir, borra todos los datos sin
borrar la tabla. No borra la tabla como tal, la llamada estructura.
El auto incremento contina con el siguiente auto incremento que
estaba antes de borrarsen los datos. En velocidad es ms rpida
que DELETE y funciona igual si no se hace con CASCADE, es decir
si la tabla no tiene relacin con otras tablas.
Si se usa CASCADE, es de mucho cuidado, elimina los datos de la
tabla y todos los datos de todas las tablas que tengan alguna
relacion directa con el FK o indirecta. No elimina estructura.

POSTGRESQL
SINTXIS
ALTER TABLE nombreTabla1
ADD campoTabla1 tipo
ALTER TABLE nombreTabla1
ADD COLUMN campoTabla1 tipoCampoTabla1 NOT NULL/NULL
ALTER TABLE nombreTabla1
ALTER COLUMN campoTabla1 SET NOT NULL;
ALTER TABLE nombreTabla1
ALTER COLUMN campoTabla1 DROP NOT NULL;
ALTER TABLE nombreTabla1
ALTER COLUMN campoTabla1 SET DATA TYPE tipoCampoTabla1
ALTER TABLE nombreTabla1
ADD CONSTRAINT nombreRestriccion FOREIGN KEY (FKEYcampoTabla1)
REFERENCES nombreTabla2(PKEYcampoTabla2)
ALTER TABLE nombreTabla1
ADD CONSTRAINT nombreRestriccion PRIMARY KEY (PKEYcampoTabla1)

ALTER TABLE nombreTabla1


ADD CONSTRAINT nombreRestriccion_unique UNIQUE (campoTabla1_unique)
ALTER TABLE nombreTabla1
ADD CONSTRAINT nombreRestriccion_chk CHECK (campoTabla1_chk)
ALTER TABLE nombreTabla
DROP COLUMN campoTabla;
ALTER TABLE nombreTabla
DROP COLUMN campoTabla CASCADE
DROP TABLE nombreTabla
DROP TABLE nombreTabla CASCADE

Si se hace a una tabla BASE con datos, la tabla se elimina por completo (datos y estructura) y do
haya FK que involucren los PK de la tabla eliminada, tambin se eliminan los FK pero quedan los da
en las tablas donde exista el FK. Luego se crea nuevamene la tabla y se crean nuevamente los FK do
estaban si se requiere.
ALTER TABLE nombreTabla
RENAME COLUMN campoTabla TO NuevoNombreCampoTabla
ALTER TABLE nombreTabla
RENAME to NuevoNombreTabla

TRUNCATE TABLE nombreTabla, nombreTabla1, ..


TRUNCATE TABLE nombreTabla CASCADE

EJERCICIO
ALTER TABLE t_paciente
ADD tele_cli integer;
ALTER TABLE tab_programavuelo
ADD COLUMN lineaaerea character varying(45) NOT NULL
ALTER TABLE t_cliente
ALTER COLUMN nom_cl SET NOT NULL;
ALTER TABLE t_cliente
ALTER COLUMN nom_cl DROP NOT NULL;
ALTER TABLE t_cliente
ALTER COLUMN nom_cl SET DATA TYPE character varying(50);
ALTER TABLE t_paciente
ADD CONSTRAINT fk_paciente_ciudad FOREIGN KEY (fk_id_ciudad)
REFERENCES t_ciudad (id);
ALTER TABLE t_telefono
ADD CONSTRAINT pk_id_paciente PRIMARY KEY(id);

ALTER TABLE t_medico


ADD CONSTRAINT uniq_cedula UNIQUE(cedula);
ALTER TABLE t_paciente
ADD CONSTRAINT chk_genero CHECK(genero='M' OR genero='F' OR genero='I');
ALTER TABLE t_paciente
DROP COLUMN fk_paciente_ciudad;
ALTER TABLE t_ciudad
DROP COLUMN id CASCADE;
DROP TABLE t_ciudad;

DROP TABLE t_paciente CASCADE;

ALTER TABLE t_funcion


RENAME COLUMN descr_funcion TO descr_func;
ALTER TABLE t_funcion
RENAME TO t_funcion1;

TRUNCATE TABLE t_ciudad CASCADE;


Es de mucho cuidado, elimina los datos de la tabla y todos los datos de todas las tablas que tengan
alguna relacion directa con el FK o indirecta.
NOTICE: truncando adems la tabla t_barrio
NOTICE: truncando adems la tabla t_medico
NOTICE: truncando adems la tabla t_paciente
NOTICE: truncando adems la tabla t_ingreso
NOTICE: truncando adems la tabla t_sala
NOTICE: truncando adems la tabla t_telefono
NOTICE: truncando adems la tabla t_valoracion
NOTICE: truncando adems la tabla t_habitacion
NOTICE: truncando adems la tabla t_hospitalizacion
NOTICE: truncando adems la tabla t_cama
NOTICE: truncando adems la tabla t_tratamiento
Query returned successfully with no result in 1071 ms.
Si el serial iba en 12 borra los datos y la prxima inserccion es en el serial 13.

INSTRUCCIN
Obtener toda la estructura de las columnas de una tabla con el
detalle de los tipos de datos y si es null o not null.

Obtener datos de una bd o de una tabla. El SELECT me dice cuales


son las columnas que quiero visualizar, con (*) son todas, y con el
nombre de la columna solo la columna que quiero visualizar.

Obtener datos de una bd o de una tabla combinada con la


sentencia WHERE se usa para extraer slo los registros que
cumplan con una condicin. EL WHERE funciona como un filtro.

Insertar datos a una tabla

Modificar datos existentes dentro de una tabla.

Borrar TODA la columna de una tabla, si no tiene relacin sus


datos con otra tabla.

Borra una serie de filas de la tabla. Podemos usar una clasula


WHERE para limitar las filas a borrar, a las que cumplan la
condicin dada. DELETE funciona igual que TRUNCATE y el auto
incremento contina con el siguiente que estaba antes de ser
eliminado. En velocidad es menos rpida que TRUNCATE.

POSTGRESQL
SINTXIS
SELECT
TABLE_NAME,COLUMN_NAME,UDT_NAME,CHARACTER_MAXIMUM_LENGTH,IS_NULLABLE
FROM INFORMATION_SCHEMA.COLUMNS
WHERE table_name = 'nombreTabla'
SELECT * FROM nombreTabla
Se usa el asterisco (*) para seleccionar todas las columnas de una tabla.
SELECT campo1Tabla, campo2Tabla, ...
FROM nombretabla
Se usa para seleccionar algunas columnas de una tabla.
SELECT campo1Tabla, camp2Tabla, .
--Tambin puede ser el asterisco (*)
FROM nombreTabla
WHERE campo1Tabla operadorRelacional valor
Los operadores relacionales son los siguientes:
= igual
<> distinto
> mayor
< menor
>= mayor o igual
<= menor o igual
Los operadores lgicos son los siguientes:
AND, significa "y",
OR, significa "o",
NOT, significa "no", invierte el resultado
Los operadores lgicos se usan para combinar condiciones.

INSERT INTO nombreTabla


(campo1Tabla,campo2Tabla,..)
VALUES
(valor1Campo1Tabla, valor1Campo2Tabla, ),
(valor2Campo1Tabla, valor2Campo2Tabla, )
valor1Campo1: si est definido como null y desconocemos el valor escribimos NULL, si est
definido como date, character, character varying, timestamp, time o text--> se escribe el
campo en comillas sencillas, Ej: 'Martha'; si est definido como integer se define sin comillas,
Ej: 4233; y si est definido como real se escribe separado por punto Ej: 3.4
Si la columna est definida como no null y queremos insertar un nombre vaco se hace con
comilas simples ''.
Si se desea slo insertar algunos valores de algunas columnas (no de todas, ni en el mismo
orden), puedo definir el nombre de las columnas en un orden especfico, pero de igual orden
se deben insertar los datos con el comando (VALUES), se pueden excluir algunas columna
siempre y cuando no sean obligatorias, es decir, NOT NULL.
Para almacenar valores de tipo fecha se permiten como separadores "/", "-","." entre otros.
PostgreSQL requiere que se ingrese la fecha con el formato aaaa/mm/dd con el separador
que ud. desee utilizar. Ej: '2016-11-25'
Si es timestamp se hace --> Ej: '2016-11-25 21:25:98', se deja un espacio entre la fecha y la
hora.

UPDATE nombreTabla
SET campo1Tabla = nuevo valor
WHERE condicin
VARIOS REGISTROS AL TIEMPO-->
UPDATE nombreTable
SET campo1Tabla='algo1', campo2Tabla=algo2
WHERE campo1Tabla='algo'
DELETE FROM nombreTabla [*]
WHERE campo1Tabla='algo'
--Lo que est en los corchetes cuadrados es opcional, de todos modos borra todos los datos,
segn se cumpla la opcin del WHERE.
DELETE FROM nombreTabla
Si la tabla tiene datos y su PK es parte de otras tablas como FK no deja borrar la tabla.
DELETE FROM nombreTabla
WHERE condicin

EJERCICIO
SELECT TABLE_NAME,COLUMN_NAME,UDT_NAME,CHARACTER_MAXIMUM_LENGTH,IS_NULLABLE
FROM INFORMATION_SCHEMA.COLUMNS
WHERE table_name = 't_cama';

SELECT * FROM t_paciente


SELECT id, nombre, apellido FROM t_paciente

SELECT *
FROM t_paciente
WHERE id=2
SELECT idlibro
FROM t_libro
WHERE (autor='Borges' OR editorial='Paidos') AND (precio<20);

INSERT INTO t_paciente


(cedula, nombre, apellido, direccion, genero, fechanac, fk_id_barrio)
VALUES
(63339958, 'Martha', 'Daz', 'Cra 3 No. 6 -78', 'F', '1975-07-05', 1),
(9415417, 'Sandro', 'Luengas', 'Calle 52 No. 1w - 85','M', '1973-10-03',null)

UPDATE t_medico
SET fk_id_jefemedico = 2
WHERE id=3 OR id=5
UPDATE t_medico
SET nombre='Marcelo Marin', telefono=74411112
WHERE nombre='Marcela Morn'
DELETE FROM t_ciudad *
WHERE id=16
DELETE FROM t_ciudad
DELETE FROM t_ciudad
WHERE ciudad='San Gil'
Si el serial estaba en 12, borra los datos y la prxima insercn es en el serial 13.

COMANDOS DE CONSOLA de PSQL


Crear BD
Entrar a trabajar con la BD creada
Borrar BD
Borrar TABLA
Vaciar una tabla, borramos el contenido de la tabla y
reiniciamos su indice, sino agregamos RESTART
IDENTITY los indices no sern reinicializados y seguirn
con el ltimo registro
Enviar resultados de consultas
SELECT - WHERE
Visualizar columnas de tabla
Visualizar columnas de tabla ms al detalle con pk y fk
Visualizacin Bases de Datos
Visualizar tablas
Salir
Consulas

E CONSOLA de PSQL
CREATE nombreBD;
\c nombreBD
DROP DATABASE nombreBD;
DROP TABLE nombreTabla;

TRUNCATE TABLE nombreTabla RESTART IDENTITY

COPY (SELECT * FROM nombreTabla) TO


'/home/tablename.csv ' WITH DELIMITER '|';
SELECT column FROM nombreTabla WHERE column =
'value';
\d nombreTabla
\d+ nombreTabla
\l
\q
select * from nombreTabla;

You might also like