Вы находитесь на странице: 1из 128

Diseo Fsico

ESPECIAL IZ A C I N EN TECNOL O G AS D E
LA IN FORM AC I N GEOGRF I CA

Ma riel a J . Quiroga Gia l droni

maqui21@gmail.com mariela_quirogag@hotmail.com

Bases de datos
Conceptual

Diseo

Lgico

Fsico

Mantenimiento

Uso
Recuperacin

SGBD
Coleccin de datos y el conjunto de infraestructura
necesaria para
Acceder a los mismos
Garantizar la integridad de los datos
Establecer los mecanismos de seguridad

Diseo de una base de datos

PostgreSQL
Versin de cdigo abierto de

un ORDBMS desarrollado
por el Departamento de
Ciencias de la Computacin
de la Universidad de
California.
Puede ser usado, modificado

y distribuido por cualquiera


sin costo alguno para
cualquier propsito.

PostgreSQL
Operating Systems:
Linux (all recent distributions),
Windows (Win2000 SP4 and later),
FreeBSD,
OpenBSD, NetBSD,
Mac OS X,
AIX,
HP/UX,
IRIX,
Solaris,
Tru64 Unix,
UnixWare.

CPU architectures:

x86, x86_64,
IA64,
PowerPC, PowerPC 64,
S/390, S/390x,
Sparc, Sparc 64,
Alpha, ARM,
MIPS, MIPSEL, M68K,
and PA-RISC.

PostgreSQL
Compatible con el estndar SQL92/SQL99
Caractersticas:
Soporte a distintos tipos de datos y creacin de tipos propios.
Incorpora la estructura de datos array e incluye herencia entre tablas
Permite la realizacin de consultas complejas y la creacin de vistas.
Declaracin de funciones y definicin de disparadores (triggers)
Incluye el uso de ndices, reglas y vistas.
Gestin de diferentes usuarios y la asignacin de permisos.
Puede ser extendido mediante la incorporacin de

tipos de datos
funciones
operadores

funciones agregadas
mtodos de indexacin
lenguajes procedurales

Arquitectura de PostgreSQL

Cliente en modo texto: psql

pgAdmin III
Es una herramienta de desarrollo y administracin para

versiones gratuitas y comerciales de PostgreSQL

Desarrollado desde 1997


SO: Linux, FreeBSD, Solaris,

Mac OSX y Windows.

Ms de 12 idiomas
Extensin gratuita bajo licencia PostgreSQL

Ejecutar pgAdmin III

Conectar a un servidor

Interface de pgAdmin III

Panel examinador de objetos


Enfoque jerrquico

Server groups: lista cada uno de los


servidores instalados
Tablespaces, Group Roles y Login Roles
Databases: contiene cada una de las BD
creadas en el servidor.
Un nombre de BD es un contenedor que
agrupa colecciones de elementos como
Extensiones, Esquemas, etc.

Un esquema es un contenedor lgico


que permite organizar grupos de
objetos similares: tablas, vistas,
procedimientos almacenados, etc.

Panel Propiedades
Muestra propiedades

y estadsticas del
objeto seleccionado
en el examinador de
objetos

Panel SQL
Muestra el cdigo
SQL utilizado para
crear o modificar el
objeto seleccionado

Barra de herramientas

Recordatorio:

Una base de datos es una coleccin de esquemas, los


cuales pueden contener tablas, funciones, vistas,
disparadores, etc.

Alguna pregunta?

Trabajo prctico N 3:
Creacin de bases de datos

Especializacin en Tecnologas de la Informacin Geogrfica


Junio 2015

Ing. Mariela Quiroga Gialdroni


maqui21@gmail.com mariela_quirogag@hotmail.com

Objetivo
Mostrar el proceso de creacin de una base de datos

desde

Un cliente de texto, utilizaremos la ventana de comandos de


Windows

Un cliente grfico: pgAdmin III

Un script desde la ventana de

Crear una BD desde un cliente de texto


Ejecutar la consola de comandos de Windows

Crear una BD desde un cliente de texto


cd\Program Files\PostgreSQL\9.2\bin

Crear una BD desde


un cliente de texto

dir

Crear una BD desde un cliente de texto


createdb help

Crear una BD desde un cliente de texto


crear una BD llamada psql_newDB

Crear una BD desde un cliente de texto


conectar a la BD:
aplicacin psql.

psql help

Crear una BD desde un cliente de texto


psql U postgres W psql_NewDB

Crear una BD desde un cliente de texto


Crear una nueva BD, cuyo nombre ser psql_ seguida de sus
iniciales en maysculas

Crear una BD desde un cliente grfico


crear una BD utilizando pgAdmin III
Nombre de la base de datos: pga_newDB
Descripcin: Creacin de una nueva base de datos empleando pgAdmin
Propietario: postgres
Template: postgres
Tablespace: pg_default
Encoding: UTF8

Crear una BD desde un cliente grfico

Crear una BD desde un cliente grfico

Comparacin de herramientas de creacin

Comparacin de herramientas de creacin

11

Crear una BD desde un cliente grfico


Crear una nueva BD y nombrarla como pga_ seguida de sus
iniciales en maysculas.
Por ejemplo, pga_MJQG.

Crear una BD desde un script


Crear una base de datos usando la ventana de scripting
usando los siguientes valores:
Nombre de la BD: scr_newDB
Propietario: postgres
Tablespace: pg_default
Encoding: UTF8

Crear una BD desde un script


Crear una nueva BD y nombrarla como scr_ seguida de sus
iniciales en maysculas.
Por ejemplo, scr_MJQG.

Crear una BD con soporte espacial


Crear una nueva BD espacial
Nombre de la base de datos: M4_obras
Descripcin: Zonas de urbanizacin y construcciones
Propietario: postgres
Tablespace: pg_default
Encoding: UTF8
Template: postgis_21_samples

Crear una BD con soporte espacial

Crear una BD con soporte espacial

Crear una BD desde un script


Crear una nueva BDE y nombrarla como aseguradora.

Trabajo prctico N 4:
Creacin de tablas

Especializacin en Tecnologas de la Informacin Geogrfica


Junio 2015

Ing. Mariela Quiroga Gialdroni


maqui21@gmail.com mariela_quirogag@hotmail.com

Creacin de tablas

Creacin de tablas

Qu debemos tener en cuenta?

Cada rectngulo amarillo representa una tabla .


Cada elipse conectada por lnea discontina es un atributo.
La clave primaria se indica subrayada y en negrita.
El color de los crculos indica el tipo de datos a utilizar.
Las relaciones estn representadas por lneas negras con la
indicacin de la cardinalidad.
La tabla del lado N agrega el atributo clave de la tabla del lado 1.

Creacin de tablas
Orden de creacin:

Ciudades Marcas
Propietarios Autos
Plizas
ActasSiniestros
Participantes

Creacin de la tabla Ciudad

Creacin de la tabla Ciudad


Definicin de las columnas

Creacin de la tabla Ciudad


Definicin de la clave primaria

Creacin de la tabla Ciudad


Definicin de la clave primaria

Creacin de la tabla Ciudad

Creacin tabla Propietarios

Creacin tabla Propietarios

Creacin de las tablas Marcas y Autos

Creacin de la tabla Polizas


Empleando cdigo SQL

Creacin de la tabla Polizas


Empleando cdigo SQL

Creacin de la tabla Actas_Siniestros


Empleando cdigo SQL

Creacin de la tabla participantes

Trabajo prctico N 5:
Gestin de la base de datos Aseguradora

PRIM ERA PARTE:


CARGAR LA IN FORM AC I N EN LA BAS E D E
D ATOS

Especializacin en Tecnologas de la Informacin Geogrfica


Junio 2015

Ing. Mariela Quiroga Gialdroni


maqui21@gmail.com mariela_quirogag@hotmail.com

Bases de datos
Conceptual

Diseo

Lgico

Fsico

Mantenimiento

Uso
Recuperacin

Registrar datos en la BD
Formas de ingresar datos a la base de datos

View Data
Insert into
Copy from

View Data
Ingresar contenido a la tabla Marcas

Edit Data en pgAdmin

Agregar datos mediante script


Agregar datos a la tabla ciudad

Agregar datos mediante COPY FROM


Agregar datos a la tabla PROPIETARIOS

Cargar datos en la tabla AUTOS


Utilizando cualquiera de los mtodos, ingrese los

datos siguientes a la tabla AUTOS.

Cargar datos en la tabla POLIZAS


Utilizando cualquiera de los mtodos, ingrese los

datos siguientes a la tabla POLIZAS.

Cargar datos en la tabla ACTAS_SINIESTROS


Utilizando cualquiera de los mtodos, ingrese los

datos siguientes a la tabla ACTAS_SINIESTROS.

Cargar datos en la tabla PARTICIPANTES


Utilizando cualquiera de los mtodos, ingrese los

datos siguientes a la tabla PARTICIPANTES.

Trabajo prctico N 6:
Gestin de la base de datos Aseguradora

SEGU ND A PARTE:
RECU PERACI N D E LA IN FORM AC I N
ALM ACEN AD A EN LA BAS E D E D ATOS

Especializacin en Tecnologas de la Informacin Geogrfica


Junio 2015

Ing. Mariela Quiroga Gialdroni


maqui21@gmail.com mariela_quirogag@hotmail.com

Consulta 1: Lista de todos los autos asegurados cuyos


propietarios residan en la ciudad de Resistencia.
Pasos:

1) Qu
campos
necesitamos?
En qu tabla
se
encuentran?

Consulta 1: Lista de todos los autos asegurados cuyos


propietarios residan en la ciudad de Resistencia.
Pasos:

2) Qu
relaciones
podemos
encontrar
entre esas
tablas?

Consulta 1: Lista de todos los autos asegurados cuyos


propietarios residan en la ciudad de Resistencia.
Pasos:

3) Definir las
restricciones

Consulta 1: Lista de todos los autos asegurados cuyos


propietarios residan en la ciudad de Resistencia.
Pasos:

3) Definir las
restricciones

Consulta 1: Lista de todos los autos asegurados cuyos


propietarios residan en la ciudad de Resistencia.
Pasos:

4) Pensar
cmo
queremos
ordenar los
resultados

Consulta 1: Lista de todos los autos asegurados cuyos


propietarios residan en la ciudad de Resistencia.
Vista de cdigo

Consulta 1: Lista de todos los autos asegurados cuyos


propietarios residan en la ciudad de Resistencia.
Resultados:

Consulta 2: cules son los autos participantes en siniestros


viales con montos por daos superiores a $ 5.000.?

Consulta 2: cules son los autos participantes en siniestros


viales con montos por daos superiores a $ 5.000.?

Consulta 2: cules son los autos participantes en siniestros


viales con montos por daos superiores a $ 5.000.?

Consulta 3: Quines son los asegurados que han contratado


plizas para vehculos anteriores al ao 2000?

Select

SELECT <lista de atributos y funciones>


FROM <lista de tablas>
[WHERE <condiciones>]
[GROUP BY <atributos de agrupamiento>]
[HAVING <condiciones de agrupamiento>]
[ORDER BY <lista de atributos>]

Consulta 4: cantidad de siniestros por tipo de siniestro


ordenadas de manera decreciente segn la cantidad.

Consulta 5: Retornar una lista que contenga los nmeros de los


informes en los cuales han participado ms de un asegurado

Consulta 6: Modificar la consulta anterior, incluyendo los datos


de los asegurados que han participado del mismo siniestro.

Consulta 7: Modificar la consulta anterior, incluyendo los datos


de los asegurados que han participado del mismo siniestro.

Ejercicio adicional

Especializacin en Tecnologas de la Informacin Geogrfica


Junio 2015

Ing. Mariela Quiroga Gialdroni


maqui21@gmail.com mariela_quirogag@hotmail.com

Ejercicio adicional

Esquema de la base de datos EMPRESA

Datos para alimentar a las tablas

Datos para alimentar las tablas

Consultas
Recuperar el salario y la direccin del empleado (o empleados)
de nombre Alberto Campos
Recuperar el nombre y la direccin de todos los empleados
que trabajan en el departamento Investigacin
Recuperar los nombres de todos los empleados del departamento 5
que trabajan ms de 10 horas por semana en el proyecto Producto X
Localizar los nombres de todos los empleados supervisados
directamente por Alberto Campos
Recuperar los nombres de todos los empleados que trabajan en cada proyecto
Por cada departamento, recuperar su nombre y el salario promedio
de todos los empleados que trabajan en l.

Bases de datos espaciales

Especializacin en Tecnologas de la Informacin Geogrfica


Junio 2015

Ing. Mariela Quiroga Gialdroni


maqui21@gmail.com mariela_quirogag@hotmail.com

Base de datos espacial


Permite describir los objetos espaciales a travs de

tres caractersticas bsicas:

Atributos
Localizacin

Topologa

caractersticas de los objetos


representada por la geometra del objeto
dnde est? qu espacio ocupa?
relaciones conceptuales y espaciales entre
objetos

Bases de datos
SGBD deben incluir

Nuevos tipos de datos para permitir almacenar la geometra


Funciones y operadores que se adapten a los datos espaciales
Extensin del lenguaje SQL para la manipulacin de los datos
espaciales, incluyendo funciones como distancia, interseccin,
etc.

Ejemplos de bases de datos geogrficas


Oracle - Oracle Spatial
SQL Server

SpatialLite
MySQL
Postgre - PostGIS

PostGIS
Es software libre
Es compatible con los estndares de OGC

Es estable y rpido
Soporta datos Geometry y Geography
Disponibilidad de herramientas conversoras

(shp2pgsql)
Visualizacin en varios clientes de escritorio (QGIS)

Trabajo prctico N 7:
Importacin de datos geogrficos

Especializacin en Tecnologas de la Informacin Geogrfica


Junio 2015

Ing. Mariela Quiroga Gialdroni


maqui21@gmail.com mariela_quirogag@hotmail.com

Herramienta shp2pgsql

Importar un archivo shape


Crear el script de importacin empleando shp2pgsql.

La forma del comando es


shp2pgsql s <SRID> W <Encoding> <ruta
y nombre de archivo shape> <nombre de la
tabla a crear> > <nombre del script>
Ejecutar el script.
Visualizar el archivo importado

Importar el shape AMGR_calles


Paso 1: Crear el script de importacin

shp2pgsql s 32721 W Latin1


d:\BasesDatos\shapes\amgr_calles.shp
calles > d:\basesdatos\calles.sql
Paso 2: Ejecutar el script de importacin

Paso 3: Visualizar el resultado en QGIS

Importar el shape AMGR_calles


Paso 1: Crear el script de importacin

shp2pgsql s 32721 W Latin1


d:\BasesDatos\shapes\amgr_calles.shp
calles > d:\basesdatos\calles.sql
Paso 2: Ejecutar el script de importacin

Paso 3: Visualizar el resultado en QGIS

Importar el shape areaint


Paso 1: Crear el script de importacin

shp2pgsql s 32721 W Latin1


d:\BasesDatos\shapes\areaint.shp
municipios > d:\basesdatos\municipios.sql
Paso 2: Ejecutar el script de importacin

Paso 3: Visualizar el resultado en QGIS

Importar el shape comisarias


Paso 1: Crear el script de importacin

shp2pgsql s 32721 W Latin1


d:\BasesDatos\shapes\comisarias.shp
comisarias > d:\basesdatos\comisarias.sql
Paso 2: Ejecutar el script de importacin

Paso 3: Visualizar el resultado en QGIS

Importar el shape siniestrosL


Paso 1: Crear el script de importacin

shp2pgsql s 32721 W Latin1


d:\BasesDatos\shapes\siniestrosL.shp
siniestros > d:\basesdatos\siniestros.sql
Paso 2: Ejecutar el script de importacin

Paso 3: Visualizar el resultado en QGIS

Importar el shape zonas


Paso 1: Crear el script de importacin

shp2pgsql s 32721 W Latin1


d:\BasesDatos\shapes\zonas.shp zonas >
d:\basesdatos\zonas.sql
Paso 2: Ejecutar el script de importacin

Paso 3: Visualizar el resultado en QGIS

Paso 2: Ejecucin del script

Ejecutar el script

Paso 3: Visualizar en QGIS

Crear una conexin

entre QGIS y PostGIS

Paso 3: Visualizar en QGIS


Marcar las

capas que se
desean
conectar y
hacer clic en
aadir

Paso 3: Visualizacin en QGIS

Trabajo prctico N 8:
Realizacin de consultas geogrficas

Especializacin en Tecnologas de la Informacin Geogrfica


Junio 2015

Ing. Mariela Quiroga Gialdroni


maqui21@gmail.com mariela_quirogag@hotmail.com

Consulta geogrfica N 1
Informar la cantidad de siniestros registrados para

cada zona y visualizar los resultados en QGIS.

Consulta geogrfica N 1

Crear una vista para la visualizacin


Crear una vista

Visualizacin consulta geogrfica 1

Consulta geogrfica N 2
Informar la cantidad de siniestros registrados para

cada municipio y visualizar los resultados en QGIS

Visualizacin consulta geogrfica 2

Consulta geogrfica N 3
Mostrar los siniestros ocurridos en Fontana y

visualizar el resultado en QGIS

Visualizacin consulta geogrfica 3

Consulta geogrfica N 4
Calcular la distancia de cada siniestros ocurridos en

Fontana a la comisara de Fontana y visualizar el


resultado en QGIS

Visualizacin consulta geogrfica 4

Visualizacin consulta geogrfica 4

Consulta geogrfica N 5
Mostrar los siniestros viales ocurridos en la

jurisdiccin de la zona 4

Visualizacin consulta geogrfica 5

Consulta geogrfica N 6
Desplegar las comisaras ubicadas en los municipios

de Barranqueras y Puerto Vilelas.

Visualizacin consulta geogrfica 6

Muchas gracias!!!

Вам также может понравиться