Escolar Documentos
Profissional Documentos
Cultura Documentos
Pedro Parra
Email: pedro.parra82@gmail.com
Documentacin:
www.postgresql.org
www.google.com
Aclarando Conceptos...
Qu es Postgresql?
es un conjunto de datos
pertenecientes a un mismo contexto y almacenados
sistemticamente para su posterior uso. La mayora de las bases de
datos estn en formato digital (electrnico), que ofrece un amplio
rango de soluciones al problema de almacenar datos.
Una base de datos relacional es una base de datos que cumple con
el modelo relacional, el cual es el modelo ms utilizado en la
actualidad para modelar problemas reales y administrar datos
dinmicamente. Tras ser postuladas sus bases en 1970 por Edgar
Frank Codd, de los laboratorios IBM en San Jos (California), no
tard en consolidarse como un nuevo paradigma en los modelos de
base de datos.
Los valores almacenados en una columna deben ser del mismo tipo
de dato.
Una clave primaria es una clave nica elegida entre todas las
candidatas, para especificar los datos que sern relacionados con las
dems tablas. La forma de hacer esto es por medio de claves
forneas.
Slo puede existir una clave primaria por tabla y ningn campo de
dicha clave puede contener valores NULL.
Una clave fornea es una referencia a una clave en otra tabla. Las
claves forneas no necesitan ser claves nicas.
Consultas Complejas
Disparadores (triggers)
Vistas(views)
Restricciones (constraints)
Integridad transaccional
Tipos de Datos
Funciones
Operadores
Procedimientos Almacenados.
Los limites generales de PostgreSQL se muestran a continuacin:
$ sudo su postgres
# psql
max_connections = 100
shared_buffers = 1024MB
Para permitir conexiones externas se buscan las siguientes lneas que
se encuentran comentadas:
listen_addresses = 'localhost'
Y se sustituyen por la siguiente lnea:
listen_addresses = '*'
CREATE USER nombreUsuario
WITH
PASSWORD 'password'
CREATEDB | NOCREATEDB
CREATEUSER | NOCREATEUSER
IN GROUP groupname [, ...]
$ sudo su postgres
$ psql
postgres=# create user pedro with password 'parra' nocreatedb
nocreateuser;
CREATE ROLE
GRANT ON TO
Intalacion de Postgresql.
Configuracin de parmetros.
Creacin de privilegios.
Sirve para crear una nueva tabla vaca en la base de datos actual. La
sintaxis general es la siguiente:
Create table [parmetros] nombre_tabla
(
nombre_columna [parmetros]
)
Sirve para crear una nueva tabla vaca en la base de datos actual. La
sintaxis general es la siguiente:
Create table [parmetros] nombre_tabla
(
nombre_columna tipo_columna
)
CREATE [ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } ] TABLE table_name ( [
{ column_name data_type [ DEFAULT default_expr ] [ column_constraint [ ... ] ]
| table_constraint
| LIKE parent_table [ { INCLUDING | EXCLUDING } { DEFAULTS | CONSTRAINTS |
INDEXES }
[, ... ]
] )
[ INHERITS ( parent_table [, ... ] ) ]
[ WITH ( storage_parameter [= value] [, ... ] ) | WITH OIDS | WITHOUT OIDS ]
[ ON COMMIT { PRESERVE ROWS | DELETE ROWS | DROP } ]
[ TABLESPACE tablespace ]
nombre de la tabla.
Primary Key
Unique
CHECK
REFERENCES nombre_tabla
FOREIGN KEY
NO ACTION,CASCADE,RESTRICT,SET NULL
create table peliculas
(
codigo char(5) constraint clave_pelicula primary key,
titulo varchar(40) not null,
fecha_produccion date,
censura char,
tiempo interval hour to minute
);
Una vez que se crea una tabla, puede ser llenada con valores
mediante el comando .
INSERT INTO nombre_tabla (nombre_columna1, nombre_columna2,
etc) VALUES (valor1, valor2,...etc);
insert into peliculas(codigo,titulo,fecha_produccion,censura,tiempo)
values ('aaa01','pelicula1','2005-01-01','A','82 minutes');
insert into peliculas(codigo,titulo,fecha_produccion,censura,tiempo)
values ('heq79','pelicula2','2003-01-01','A','90 minutes');
El comando ms usado en SQL es la instruccin SELECT, que se
utiliza para recuperar datos. La sintaxis es:
SELECT [columnas,opciones]
FROM [tablas,opciones]
WHERE [condiciones,opciones]
codigo | titulo | fecha_produccion | censura | tiempo
-----------+-----------+--------------------------+------------+----------
aaa01 | pelicula1 | 2005-01-01 | A | 01:22:00
heq79 | pelicula2 | 2003-01-01 | A | 01:30:00
codigo | titulo
--------------------+--------------------
aaa01 | pelicula1
heq79 | pelicula2
codigo | titulo | fecha_produccion
----------+-------------+------------------------
aaa01 | pelicula1 | 2005-01-01