1. UNIVERSIDAD PERUAN DE CIENCIAS INFORMÁTICAS
30 de julio
de 2013
Instructor: Luis Augusto Claudio Ponce
2. UNIVERSIDAD PERUAN DE CIENCIAS INFORMÁTICAS
30 de julio
de 2013
Instructor: Luis Augusto Claudio Ponce
Índice
1. Estructura de PostgreSQL.
2. ¿Qué es pgAdmin-III?
3. ¿Cómo conseguir la aplicación?
4. ¿Para qué la usaremos?
5. Administración de PostgreSQL.
5.1. Creación de Roles
5.2. Creación de TableSpace
5.3. Creación de base de Datos
5.4. Creación de Esquema
5.5. Creación de Tabla
6. Ventana de comandos de PostgreSQL
dentro de pgAdmin-III
3. UNIVERSIDAD PERUAN DE CIENCIAS INFORMÁTICAS
30 de julio
de 2013
Instructor: Luis Augusto Claudio Ponce
Rol
Table Space
Base de Datos
Esquema
Tabla
1. Estructura de PostgreSQL.
Debemos seguir la estructura de la siguiente figura para poder administrar de una
manera correcta PostgreSQL.
Si es que aun no conocemos esta estructura podríamos recurrir al siguiente enlace:
http://megabyte1507.wordpress.com/2013/07/29/estructura-de-postgresql-2/
, donde encontraremos lo necesario para comprenderlo.
4. UNIVERSIDAD PERUAN DE CIENCIAS INFORMÁTICAS
30 de julio
de 2013
Instructor: Luis Augusto Claudio Ponce
2. ¿Qué es pgAdmin-III?
Es una aplicación de diseño y manejo de bases de datos para su uso con PostgreSQL. La
aplicación se puede utilizar para manejar postgreSQL 7.3 y superiores y funciona sobre casi
todas las plataformas. Este software fue diseñado para responder a las necesidades de
todos los usuarios, desde la escritura de simples consultas SQL a la elaboración de bases
de datos complejas. La interfaz gráfica es compatible con todas las características de
PostgreSQL y facilita la administración. La aplicación también incluye un editor de la
sintaxis SQL, un editor de código del lado del servidor, un agente para la programación de
tareas «SQL/batch/shell», soporte para el motor de replicación Slony-I y mucho más. La
conexión del servidor se puede realizar mediante TCP/IP o Unix Domain Sockets (en
plataformas *nix), y puede ser cifrado mediante SSL por seguridad. No se requieren
controladores adicionales para comunicarse con la base de datos del servidor.
3. ¿Cómo conseguir la aplicación?
Existen versiones para Windows, Linux y Mac de 32 y 64 bits. Los archivos de descargas
vienen incluido con el motor de base de datos PostgreSQl y la herramienta de
administración de PostgreSQl “ pgAdmin-III “. Links de descarga:
http://www.enterprisedb.com/products-services-training/pgdownload#windows
4. ¿Para que la usaremos?
Nos ayudara de una manera muy fácil e interactiva a administrar el gestor de base
de datos ” PostgreSQL”.
Su entorno grafico es muy sencillo de configurar y a la vez nos familiarizara con el
lenguaje “SQL” si es que aun no lo conocemos.
Esto no solo nos permitirá aprender a utilizar el asistente de configuraciones pgAdmin-III
ya que también al aprender el lenguaje de consulta “SQL” podamos administrar
PostgresSQL desde la ventana de consola que tiene pgAdmin-III o la ventana de
comandos de Windows.
5. Administración de PostgreSQL.
5.1. Creación de Roles.
Para el acceso a la administración del motor de base de datos PostgreSQL accederemos al
botón "Inicio" / "PostgreSQL 9.0" /"pgAdmin III":
5. UNIVERSIDAD PERUAN DE CIENCIAS INFORMÁTICAS
30 de julio
de 2013
Instructor: Luis Augusto Claudio Ponce
Desplegaremos "Server Groups", dentro desplegaremos "Servidores" y dentro de éste
pulsaremos con el botón derecho del ratón sobre "PostgreSQL 9.0 (localhost:5432), en el
menú emergente seleccionaremos "Conectar":
6. UNIVERSIDAD PERUAN DE CIENCIAS INFORMÁTICAS
30 de julio
de 2013
Instructor: Luis Augusto Claudio Ponce
Introduciremos la contraseña para el súper usuario postgres (la contraseña introducida en
la instalación):
Si todo es correcto nos conectaremos al servidor PostgreSQL, desde pgAdmin podremos
configurar y administrar el servidor de PostgreSQL:
Para crear un rol de login pulsaremos con el botón derecho del ratón sobre "Login Roles",
seleccionaremos "New Login Role":
7. UNIVERSIDAD PERUAN DE CIENCIAS INFORMÁTICAS
30 de julio
de 2013
Instructor: Luis Augusto Claudio Ponce
En la pestaña “Properties ” ingresaremos los siguientes datos:
Role name: Rol de nombre de usuario, en nuestro caso “Administrador”.
Password: Contraseña para este usuario.
Account expiries: Si queremos que la cuenta de usuario caduque en una fecha, la
establecemos en este campo.
8. UNIVERSIDAD PERUAN DE CIENCIAS INFORMÁTICAS
30 de julio
de 2013
Instructor: Luis Augusto Claudio Ponce
En la pestaña "Role Privileges" podremos indicar si este usuario será súper usuario, si puede
crear objetos de la base de datos y si puede crear roles:
En la pestaña “SQL” podremos visualizar el código SQL generado y poder familiarizarnos si
lo conocemos por primera vez:
Código SQL Generado :
CREATE ROLE "Administrador" LOGIN ENCRYPTED PASSWORD
'md5a5ae26f6190425e17b7001c5f7490520'
SUPERUSER CREATEDB CREATEROLE
VALID UNTIL '2013-07-09 06:53:04';
9. UNIVERSIDAD PERUAN DE CIENCIAS INFORMÁTICAS
30 de julio
de 2013
Instructor: Luis Augusto Claudio Ponce
Pulsaremos “OK” en la ventana para crear el Rol loguin.
5.2. Creación de un TableSpace:
Antes de crear una base de datos, crearemos el tablespace donde guardaremos los datos de
la misma, si bien se pueden utilizar los tablespaces por defecto de PostgreSQL (pg_default y
pg_global) es recomendable crear tablespaces separados.
Para crear un tablespace accederemos a la administración pgAdmin, sobre "Tablespaces"
pulsaremos con el botón derecho y seleccionaremos "Nuevo Tablespace":
10. UNIVERSIDAD PERUAN DE CIENCIAS INFORMÁTICAS
30 de julio
de 2013
Instructor: Luis Augusto Claudio Ponce
En la pestaña "Properties" introduciremos los siguientes datos:
Name: nombre que identificará el tablespace, en nuestro caso "tb_Administrador".
Location: ubicación de los datos del tablespace, en nuestro caso: “D:PostgreSQl”.
Owner: Seleccionaremos el usuario creado anteriormente “Administrador”.
11. UNIVERSIDAD PERUAN DE CIENCIAS INFORMÁTICAS
30 de julio
de 2013
Instructor: Luis Augusto Claudio Ponce
En la pestaña “SQL” podemos ver el código generado:
Código SQL Generado :
CREATE TABLESPACE "tb-administrador" OWNER "Administrador"
LOCATION E'D:PostgreSQl';
Nota: La carpeta de destino de existir, de lo contrario mostrar un error como este:
---------------------------
pgAdmin III
---------------------------
Ha ocurrido un error:
ERROR: directory “D:PostgreSQl" does not exist
---------------------------
Aceptar
---------------------------
Inicialmente, PostgreSQL creará una subcarpeta dentro de la carpeta indicada para el
tablespace con un nombre como este: PG_9.0_201008051
12. UNIVERSIDAD PERUAN DE CIENCIAS INFORMÁTICAS
30 de julio
de 2013
Instructor: Luis Augusto Claudio Ponce
5.3. Creación de la Base de Datos.
Para crear una nueva base de datos en PostgreSQL, pulsaremos el botón derecho del ratón sobre
"Databases", seleccionaremos "New Database…":
En la pestaña "Properties" introduciremos los siguientes datos:
Name: nombre de la base de datos, en nuestro caso "bdAdministrador".
Owner: seleccionaremos el usuario creado anteriormente "Administrador".
Encoding: seleccionaremos UTF8.
Tablespace: seleccionaremos el tablespace creado anteriormente "tb_Administrador".
Collation: Seleccionaremos "Spanish_Spain.1252".
Character Type: Seleccionaremos "Spanish_Spain.1252"
En la pestaña” Privileges” le daremos todos los permisos.
13. UNIVERSIDAD PERUAN DE CIENCIAS INFORMÁTICAS
30 de julio
de 2013
Instructor: Luis Augusto Claudio Ponce
En la pestaña “SQL” podemos ver el código generado:
Código SQL generado:
CREATE DATABASE "bdAdmistrador"
WITH ENCODING='UTF8'
OWNER="Administrador"
LC_COLLATE='Spanish_Peru.1252'
LC_CTYPE='Spanish_Peru.1252'
CONNECTION LIMIT=-1
TABLESPACE="tb-administrador";
14. UNIVERSIDAD PERUAN DE CIENCIAS INFORMÁTICAS
30 de julio
de 2013
Instructor: Luis Augusto Claudio Ponce
Luego pulsaremos “OK”
15. UNIVERSIDAD PERUAN DE CIENCIAS INFORMÁTICAS
30 de julio
de 2013
Instructor: Luis Augusto Claudio Ponce
5.4. Creación de un esquema.
Para crear una esquema en la base de datos creada anteriormente tenemos que
desplegar nuestra base de datos “bdAdministrador” y luego”Schemas”, pulsaremos el
botón derecho del ratón sobre "Schemas", seleccionaremos "New Schema…":
En la pestaña “Properties” introduciremos los siguientes datos:
Name: Nombre que identificara nuestro esquema, en nuestro caso”sch-Administracion”.
Owner: Seleccionaremos el usuario creado anteriormente “Administrador”.
En la pestaña “Privileges” le daremos todos los permisos.
16. UNIVERSIDAD PERUAN DE CIENCIAS INFORMÁTICAS
30 de julio
de 2013
Instructor: Luis Augusto Claudio Ponce
En la pestaña “SQL” podemos ver el código generado.
Código SQL generado:
CREATE SCHEMA "sch-Administracion"
AUTHORIZATION "Administrador";
17. UNIVERSIDAD PERUAN DE CIENCIAS INFORMÁTICAS
30 de julio
de 2013
Instructor: Luis Augusto Claudio Ponce
Luego pulsaremos “OK”.
5.5. Creación de tabla.
Para crear una tabla dentro del esquema”sch-Administracion” que a su vez se
encuentra dentro la base de datos “bdAdministracion”.
Nos situamos en “Schemas”/“sch-Administracion”/”Tables”, pulsaremos con
el botón derecho del ratón sobre "Tables" y seleccionaremos "New Table".
18. UNIVERSIDAD PERUAN DE CIENCIAS INFORMÁTICAS
30 de julio
de 2013
Instructor: Luis Augusto Claudio Ponce
Este será el diseño de la tabla que vamos a crear en el esquema “sch-Administracion”:
19. UNIVERSIDAD PERUAN DE CIENCIAS INFORMÁTICAS
30 de julio
de 2013
Instructor: Luis Augusto Claudio Ponce
En la pestaña “Properties” ingresaremos los siguiente datos:
Name: nombre de la tabla, en nuestro caso "Cliente".
Owner: seleccionaremos el usuario creado anteriormente "Administrador".
Tablespace: seleccionaremos el tablespace creado anteriormente "tb_Administrador.
En la pestaña “Columns” pulsaremos el botón “Add”:
20. UNIVERSIDAD PERUAN DE CIENCIAS INFORMÁTICAS
30 de julio
de 2013
Instructor: Luis Augusto Claudio Ponce
Introduciremos el nombre de la columna "Codigo", el tipo de dato (para el autoincremento en
PostgreSQL utilizamos el tipo de dato "serial"), puesto que esta columna será clave primaria
marcaremos "No Nulo":
21. UNIVERSIDAD PERUAN DE CIENCIAS INFORMÁTICAS
30 de julio
de 2013
Instructor: Luis Augusto Claudio Ponce
De la misma forma añadiremos las demás columnas utilizando el botón “Add”:
Nombres: Tipo “Character”,Longitud(50).
Apellidos:Tipo “Character”,Longitud(50).
DNI:Tipo Tipo,”Character”,Longitud(8).
Direccion:Tipo “Character varyng”.
Nota:
Serial:Auto_incrementable en PostgreSQL, comenzando en 1 y aumentando de 1 en 1 .
Si queremos otro número para comenzar o un intervalo diferente podemos definir una
secuencia.
Aunque el tipo de dato es serial,”PostgreSQL” lo interpretara como una secuencia:
Script : “Codigo" integer NOT NULL DEFAULT nextval('"sch-
Administracion"."Cliente_Codigo_seq"'::regclass),
Sequencia:
Inicio:minvalue.
Fin:maxvalue, cuando llega al número definido se produce un reinicio.
Increment by: Intervalo se secuencia.
Script:
Create sequence sec_autoincrement
Minvalue 1000
Maxvalue 99999
Increment by 1;
Varchar(x): Define una cadena de caracteres(Character) de longitud variable en la cual
determinamos el máximo de caracteres con el argumento "x" que va entre paréntesis.
Su rango va de 1 a 10485760 caracteres.
Char(x): Define una cadena de longitud fija determinada por el argumento "x". Su rango es
de 1 a 10485760 caracteres.
Si la longitud es invariable, es conveniente utilizar el tipo char; caso contrario, el tipo
varchar.
Text: Define una cadena de longitud variable, podemos almacenar una cadena de hasta
1GB (podemos utilizar las palabras claves character varying en lugar de text).
22. UNIVERSIDAD PERUAN DE CIENCIAS INFORMÁTICAS
30 de julio
de 2013
Instructor: Luis Augusto Claudio Ponce
Para agregar la llave primaria nos vamos a la pestaña”Constraint”.
Seleccionamos la opción “Primary Key” y pulsamos el botón “Add”
En la ventana emergente que aparece para crear la llave primaria nos dirigimos a la
pestaña “Properties” e introducimos los siguientes datos:
Name: Nombre de la llave primaria, en nuestro caso "pk-codigo".
Tablespace: Seleccionaremos el tablespace creado anteriormente "tb_Administrador.
En la pestaña “Columns” buscamos el atributo “Codigo” y seleccionamos el botón “Add”
para crear la llave primaria de la tabla.
23. UNIVERSIDAD PERUAN DE CIENCIAS INFORMÁTICAS
30 de julio
de 2013
Instructor: Luis Augusto Claudio Ponce
Pulsaremos “Ok” para crear la llave primaria.
24. UNIVERSIDAD PERUAN DE CIENCIAS INFORMÁTICAS
30 de julio
de 2013
Instructor: Luis Augusto Claudio Ponce
En la pestaña “SQL” podemos ver el código generado
Código SQL generado:
CREATE TABLE "sch-Administracion"."Cliente"
(
"Codigo" serial NOT NULL,
"Nombres" character(50),
"Apellidos" character(50) NOT NULL,
"DNI" character(8),
"Direccion" character varying,
CONSTRAINT "pk-codigo" PRIMARY KEY ("Codigo") USING INDEX TABLESPACE
"tb-administrador"
)
WITH (OIDS = FALSE)
TABLESPACE "tb-administrador";
ALTER TABLE "sch-Administracion"."Cliente" OWNER TO "Administrador";
Pulsaremos “ok” para crear la tabla.
25. UNIVERSIDAD PERUAN DE CIENCIAS INFORMÁTICAS
30 de julio
de 2013
Instructor: Luis Augusto Claudio Ponce
6. Ventana de comandos de PostgreSQL dentro de pgAdmin-III
Doble click en el botón “SQL”.
Nos mostrara la siguiente ventana donde podemos ejecutar comandos “SQL”,
Presionando F5 o el botón verde (Execute Query).
26. UNIVERSIDAD PERUAN DE CIENCIAS INFORMÁTICAS
30 de julio
de 2013
Instructor: Luis Augusto Claudio Ponce